javascript - 为什么 yui DOM-create 方法有一个名为 'yui3-big-dummy' 的类的处理程序?

标签 javascript html css yui yui3

在 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] && nodes[0].className === 'yui3-big-dummy') {//使用虚拟节点保留一些属性(例如未选择 OPTION)

这到底是什么意思?我不明白为什么会有一个名为“yui3-big-dummy”的类

最佳答案

这是因为他们在自己内部的东西上进一步使用了那个类,他们只是不想把一个有人会实际使用的类放在那里。您会注意到第 317 行,他们正在使用该类将一些东西放在那里,并且他们正试图以此为目标。这只是一些您通常不必担心的内部问题。

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

关于javascript - 为什么 yui DOM-create 方法有一个名为 'yui3-big-dummy' 的类的处理程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12417218/

相关文章:

javascript - 按钮意外提交表单

javascript - Protractor 已弃用 getLocationAbsUr

javascript - 我可以使用 jQuery 的 .css() 方法将速记 css 应用于元素吗?

javascript - 单击时获取链接的内部 html

html - 为什么我的 DIV 重叠

php - 使用PHP脚本登录但无法登录?

css - 将 Less 和 CSS 文件与 grails lesscss-resource 捆绑在一起

javascript - Jquery 在父级之外查找 ID 或表单

css - 如何使两个小部件的高度相同?

html - CSS滑动菜单有问题