6

YUIドキュメント; http://yuilibrary.com/yui/docs/api/files/dom_js_dom-create.js.html

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);
        }

110行目は

} else if(nodes [0] &&ノード[0].className==='yui3-big-dummy'){//一部の属性を保持するためにダミーノードを使用する(例:OPTIONが選択されていない)

これは正確にはどういう意味ですか?「yui3-big-dummy」という名前のクラスがある理由がわかりません

4

1 に答える 1

2

それは、彼らが自分の内部のものでそのクラスをさらに下に使用し、誰かが実際に使用するクラスをそこに固定したくないからです。317行目で、彼らがそのクラスを使用してそこに何かを入れており、それをターゲットにしようとしていることに気付くでしょう。それはあなたが一般的に心配する必要がないいくつかの内部的なものです。

return Y_DOM.create('<select><option class="yui3-big-dummy" selected></option>' + html + '</select>', doc);
于 2012-09-17T01:26:14.420 に答える