querySelectorAll所有DOM节点的polyfill

时间:2013-12-03 21:40:16

标签: javascript

因此,由于一些奇怪的情况,我必须确保我在一段时间后工作的特定小部件必须在Firefox 3.0.1上工作。我得到了大部分工作,但我当前的问题是我依赖于部件的小部件的库需要在任何DOM元素上可用的querySelectorAll / querySelector

我正在使用的当前polyfill将其附加到文档:

if (!document.querySelectorAll) {
document.querySelectorAll = function(selector) {
    var doc = document,
        head = doc.documentElement.firstChild,
        styleTag = doc.createElement('STYLE');
    head.appendChild(styleTag);
    doc.__qsaels = [];

    styleTag.sheet.insertRule(selector + "{x:expression(document.__qsaels.push(this))}", 0);
    window.scrollBy(0, 0);

    return doc.__qsaels;
}

}

是否有我错过的polyfill允许从任何选定的节点访问类似的功能?那么,例如,如果我要使用此函数返回的一个元素,我可以再次调用此函数来查找第一个节点子节点吗?

谢谢:)

0 个答案:

没有答案