簡體   English   中英

querySelector不適用於IE 9

[英]querySelector does not work with IE 9

我正在嘗試在具有左右導航面板的頁面中折疊展開左面板功能。 左側面板折疊,但未設置新的容器類。 結構如下:

<div class="contentContainer">

    <div class="leftNavPanel">
        <div>

        </div>
    </div>


    <div class="openClose" id="openClose">
        <div class="leftPanelClose">
            <a class="expandCollapseAnchor" href="javascript:collapseExpand()"><i class="fa fa-angle-double-left" id="expandCollapseIcon"></i></a>      
        </div>

    </div>

    <div class="rightNavPanel">
        <div>

        </div>
    </div>

    <div class="clearBoth"></div>

</div>

我的JavaScript看起來像這樣:

function collapseExpand(){

var left = document.querySelector("div.leftNavPanel");
var oc = document.querySelector("div.openClose");
var rP = document.querySelector("div.rightNavPanel");
var cont = document.querySelector(".contentContainer, .contentContainerNoLeftNavPanel");
var ic = document.getElementById("expandCollapseIcon");

if (left.style.display!="none")
{
left.style.display="none";
oc.style.marginLeft="0px";
rP.style.marginLeft="20px";
cont.classList.add("contentContainerNoLeftNavPanel");
cont.classList.remove("contentContainer");
ic.classList.remove("fa-angle-double-left");
ic.classList.add("fa-angle-double-right");
}
else
{
left.style.display="block";
oc.style.marginLeft="290px";
rP.style.marginLeft="310px";
cont.classList.add("contentContainer");
cont.classList.remove("contentContainerNoLeftNavPanel");
ic.classList.remove("fa-angle-double-right");
ic.classList.add("fa-angle-double-left");
}

}

唯一的問題是querySelector不接受兩個類名作為舊瀏覽器的參數(<= IE9),至少我認為這是問題所在。 有人可以告訴我這里發生了什么嗎? 在最新的chrome和IE>版本9中,這似乎可以正常工作

我猜你的問題是IE9或更舊 cont.classList 不支持 cont.classList

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM