2012-09-14 26 views
6

YUI belgelerinde; http://yuilibrary.com/yui/docs/api/files/dom_js_dom-create.js.htmlNeden yui DOM-create yönteminin 'yui3-big-dummy' adlı sınıf için bir işleyicisi var?

if (nodes.length === 1) { // return single node, breaking parentNode ref from "fragment" 
      ret = nodes[0].parentNode.removeChild(nodes[0]); 
     } else if (nodes[0] && nodes[0].className === 'yui3-big-dummy') { // using dummy node to preserve some attributes (e.g. OPTION not selected) 
      if (nodes.length === 2) { 
       ret = nodes[0].nextSibling; 
      } else { 
       nodes[0].parentNode.removeChild(nodes[0]); 
       ret = Y_DOM._nl2frag(nodes, doc); 
      } 
     } else { // return multiple nodes as a fragment 
      ret = Y_DOM._nl2frag(nodes, doc); 
     } 

Hat 110 başka

} halinde (düğümler [0] & & düğümleri [0] .className === 'yui3-büyük-kukla') {// taklit düğümü kullanarak söylüyor bazı öznitelikleri korumak için (örn. OPSİYON seçilmemiş)

Bu ne demek? Neden yui3-big-dummy '

+0

Hat 110'a atıfta bulunuyorsunuz değil mi? satır 100 değil. – Jack

+0

düzenleme için teşekkürler 12 – xiaohao

cevap

2

adında bir sınıfın var olduğunu anlamıyorum, çünkü bu sınıfı kendi iç şeyleri üzerinde kullanıyorlar ve sadece bir derse girmek istemiyorlar. Birisi gerçekten kullanacak. 317 numaralı çizgide, o sınıfı kullanarak bir şeyler koyduğunu ve bunu hedeflemeye çalıştıklarını fark edeceksiniz. Bu, genellikle endişelenmen gerekmeyen bazı içsel şeyler.

return Y_DOM.create('<select><option class="yui3-big-dummy" selected></option>' + html + '</select>', doc); 
+0

em, teşekkürler. ama bunu ne yapmak için hedef? kafa karıştırıcı ... ve "yui3-büyük-kukla" nın nasıl kullanıldığı hakkında bir detay var mı? Merakımı bağışla – xiaohao

+0

Açıklamada "bazı özellikleri korumak için kukla düğümün kullanıldığını" belirttiler (örneğin, OPTION seçilmemiş). Muhtemelen ne yapıyorlar? – klamping