0

我正在尝试为在 IE 中以怪癖模式呈现的页面创建一个小书签。我无法控制页面的来源,因此告诉我更改文档类型将不起作用。

无论如何,我试图通过它的类来获取一个元素,但似乎 getElementsByClassName 和 querySelectorAll 在怪癖模式下不起作用。除了走 dom,还有其他方法可以完成这项工作吗?

4

1 回答 1

3

您可以为无法执行 querySelector 的浏览器创建一个实用程序 - 请注意,此示例返回一个数组,而不是节点列表。

function classReunion(classname, tag, parent){
    var A= [], elements, L, who,
    rx= RegExp(/'\\b'+classname+'\\b');
    tag= tag || '*';
    parent= parent || document;
    elements= parent.getElementsByTagName(tag);
    L= elements.length;
    while(L){
        who= elements[--L];
        if(rx.test(who.className)) A.push(who);
    }
    return A;
}

旧的浏览器确实依靠“遍历” dom 来按类收集元素组。

于 2013-03-28T20:06:46.680 回答