簡體   English   中英

為什么這段JavaScript既可以在Google Chrome和IE上運行,又不能在Firefox中運行?

[英]Why does this piece of javascript work on both Google Chrome and IE but not in Firefox?

我對javascript編程很陌生,並且陷入了這個問題:我有一個div顯示用Flash制作的地圖。 此閃光燈帶有一個放大鏡圖標,單擊該圖標可將其稱為javascript:

function turnMap() 
{
    DivSwitcher(map.id);
    DivSwitcher(rightcolumn.id);
    DivSwitcher(leftcolumn.id);
}

function DivSwitcher(layer) 
{
    if (document.getElementById(layer).style.display != "none")
        document.getElementById(layer).style.display = "none";
    else
        document.getElementById(layer).style.display = "block";
}

所有調用的div都確實存在,但是具有地圖ID的div設置為display: none 在IE和Chrome上,此代碼都可以正常工作:div可以根據需要隱藏或顯示,但在Firefox上則不會發生。 我嘗試與FireBug一起運行以查看會發生什么:

地圖未定義

如果你們能給我任何線索,我將不勝感激。

這是因為JavaScript變量map未在當前范圍內定義,這就是我可以從您的代碼中得知的全部內容。

我的猜測是,您正在嘗試通過調用元素的名稱來訪問該元素,但該名稱不受支持。 也許您可以嘗試:

    DivSwitcher('map');
    DivSwitcher('rightcolumn');
    DivSwitcher('leftcolumn');

暫無
暫無

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

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