Organizzazione di $ (documento) .ready

1

Ho un codice che assomiglia a questo, eccetto piuttosto che a 2 sezioni, ce ne sono circa 20, e hanno un vero codice in loro:

/*------------
 * Contents:
 *  1. Load slider
 *  2. Check form
/*------------    

/*------------    
 * 1. Load slider
/*------------

var slider_id = 101;
var num_slides = 10;

$(document).ready(function(){
    // Initiate document ready slider
});

/*------------    
 * 2. Check form
/*------------

var fields = {"text","number","textarea"};

$(document).ready(function(){
    // Do some document ready form stuff
});

Sto cercando di mantenere tutto pulito perché ci sarà un passaggio di consegne ad un certo punto.

La mia domanda è: dovrei farlo come ho fatto, o qualcosa del genere:

/*------------
 * 1. Load slider
 * 2. Check form
/*------------    

/*------------    
 * 1. Load slider
/*------------

var slider_id = 101;
var num_slides = 10;

/*------------    
 * 2. Check form
/*------------

var fields = {"text","number","textarea"};

$(document).ready(function(){
    /*------------    
     * 1. Load slider
    /*------------

    // Initiate document ready slider

    /*------------    
     * 2. Check form
    /*------------

    // Do some document ready form stuff

});

Quindi, minimizzo le chiamate pronte per i documenti o raggruppo i contenuti associati insieme? Semplicemente autodidatta, quindi non ho idea di questo tipo di buone pratiche. Grazie

    
posta Djave 03.09.2013 - 16:49
fonte

1 risposta

0

Direi che il principio generale per questo genere di cose è evitare di ripetersi il più possibile.

Poiché il tuo secondo esempio eviterebbe di riscrivere la riga "$ (document) .ready (function () {" più volte, direi che sarebbe la strada da percorrere.Se la logica di inizializzazione è molto specifica, potresti scrivere un numero di metodi "init ####" e avere il tuo unico metodo di inizializzazione chiamarli .. Altre due note:

Al momento, il tuo var avrà una portata globale, almeno, a meno che non ci sia il codice sopra e sotto che non hai incluso. Ciò significa che se qualcun altro sta scrivendo un codice importante per la stessa pagina, forse per qualcosa di completamente separato, che fa anche riferimento a "slider_id", potrebbe usare il tuo. Se il tuo intero codice è incapsulato all'interno di una funzione anonima (che si chiama sia immediatamente, sia su documento pronto) puoi evitarlo.

Infine, in linea di principio, puoi sostituire "$ (document) .ready (function () {" con "$ (function () {" e dovrebbe compiere la stessa cosa.

    
risposta data 03.09.2013 - 17:58
fonte

Leggi altre domande sui tag