jQuery的.children()
替代xui.js(或纯javascript)。
更具体地说,我正在尝试让$x(this)
的孩子,但$x(this).children('p')
不起作用(因为它似乎不存在于库中。它无法识别根据Firebug,它也不在xuijs docs中。
答案 0 :(得分:1)
不确定该库,但如果您有本机DOM元素,则本机JS可能如下所示:
[].filter.call(this.children, function(el, i) {
return el.nodeName.toLowerCase() === 'p';
});
如果您支持旧版浏览器,则可以从MDN获取Array.prototype.filter
的垫片。
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/filter#Compatibility
您也可以轻松制作可重复使用的功能。
function children(elem, s) {
return [].filter.call(elem.children, function(el, i) {
return el.nodeType === 1 && (!s || el.nodeName.toLowerCase() === s);
});
}
children(this, 'p');
它只按标签名称进行过滤,但扩展它会很简单。