Indentazione / interruzione di catene jquery per la leggibilità

4

Sono curioso di sapere come gli altri indentano / rompono lunghe catene jQuery, dato che non posso mai decidere cosa è più leggibile (in particolare quando si usa .end () per "chiudere" un blocco di metodi, ad es.

$(this).not(":has(.pointer)").append(pointerHtml)
                .end()
            .closest("li").toggleClass("selected")
            .siblings().removeClass("selected")
            .andSelf().removeClass("pre-selected").animate({
                                 left: 12
                                 opacity: 0.5
                            })
                .end().end()
            .filter(".selected").prev().addClass("pre-selected")
                            .end().children().load("/homepage.html", function() {
                                       //code
                             }).end().end().addClass("processed");

Come si formatterà questo?

* modifica includeva un metodo con un callback per renderlo un po 'più interessante

    
posta wheresrhys 14.04.2011 - 18:17
fonte

2 risposte

7

Uso il rientro per significare la gerarchia.

$(this).not(":has(.pointer)")
  .append(pointerHtml).end()
  .closest("li")
    .toggleClass("selected")
    .siblings()
      .removeClass("selected")
      .andSelf().removeClass("pre-selected")
    .end()
  .end()
  .filter(".selected")
    .prev().addClass("pre-selected");
    
risposta data 14.04.2011 - 18:27
fonte
0

Per indentazione direi che il selettore sarebbe equivalente all'apertura di un blocco ( { ), mentre .end() - equivalente di }

    
risposta data 14.04.2011 - 18:28
fonte

Leggi altre domande sui tag