我正在尝试为在quirks模式下在IE中呈现的页面创建一个书签。我无法控制页面的来源,因此告诉我更改doctype无效。

无论如何,我正在尝试通过其类获取元素,但似乎getElementsByClassName和querySelectorAll在怪癖模式下不起作用。还有什么其他方法可以使您在完成dom之后不做这件事?

最佳答案

您可以为无法使用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来按类收集元素组。

关于javascript - 在IE Quirks模式下按类别选择元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15690404/

10-16 14:14