-2
下面的函數被用在兩個.php文檔中。該代碼在第一個文檔中工作得很好,但在第二個文檔中它只執行(mode ==「on」)條件中的前兩個賦值語句。爲什麼JavaScript在這種情況下不能正確執行此塊?
在第一個文檔中,「popoutfg」是在父窗口中找到的iframe。 在第二個文檔中,「popoutfg」是位於父窗口中的另一個iframe中的iframe。
所以基本上問題是在第二個它只執行這兩個:temp1.style.visibility="visible";
和 temp2.style.visibility="visible";
。
請謝謝! = 3
function popout(mode, links, width, height, paddingh, paddingv)
{
var temp1 = document.getElementById("popoutfg");
var temp2 = document.getElementById("popoutbg");
if(mode == "on")
{
temp1.style.visibility = "visible";
temp2.style.visibility = "visible";
temp1.style.width = width;
temp1.style.height = height;
temp1.style.left = paddingh;
temp1.style.right = paddingh;
temp1.style.top = paddingv;
temp1.style.bottom = paddingv;
temp1.src = links;
}
if(mode == "off")
{
temp1.style.visibility = "hidden";
temp2.style.visibility = "hidden";
}
}
然後,你可能有一個JavaScript錯誤。你有沒有看錯誤控制檯或調試器控制檯,看看它說什麼?你確定temp1和temp2是有效的嗎?這一行上的'>'字符是什麼:'> temp1.style.visibility =「visible」;'? – jfriend00
我不希望'document.getElementById()'在從父頁面調用時在父頁面的iframe中查找元素時工作。你確定那部分工作正常嗎? (如果在''alert'(temp1.id);'?'之前'你會得到什麼?') – nnnnnn
@jfriend - 哦對不起,這是我在複製代碼時做的一個錯誤。我對輸入事物的方式感到困惑。 那麼確定temp1是vailid,因爲它確實將iframes可見性更改爲可見,只是沒有設置樣式屬性的其餘部分。 – AccidentallyC