2011-11-28 65 views
-2

本网站上的某些javascript:http://www.bristolhotel.com/pizzeria/onlinepizza3.php在Firefox中不起作用。有什么问题?javascript隐藏/显示功能在Firefox中不起作用

<script language="JavaScript"> 

    function OpenDiv(popUpDiv){ 
      popUpDiv.style.display="block"; 
      window.setTimeout("Hide();", 2000); 
    } 

    function OpenDiv(blanket){ 
      blanket.style.display="block"; 
      window.setTimeout("Hide();", 2000); 
    } 

    function Hide() { 
      document.getElementById('popUpDiv').style.display='none' 
      document.getElementById('blanket').style.display='none' 
    } 

</script> 

<script language="JavaScript"> 

    function OpenCloseDiv(divName) { 
      if (divName.style.display == "none") { 
       divName.style.display="block"; 
      } else { 
       divName.style.display="none"; 
      } 
    } 

</script> 
+0

你有页面上的JS错误:'图像损坏或截断:http://www.bristolhotel.com/pizzeria/images/background.jpg'。在这个JS之后将不能在你的网站上运行。 – Samich

+0

你应该使用普通的JS还是你也可以使用jQuery? – tomexx

+4

当不需要时不要使用jQuery。 –

回答

1

尝试更改window.setTimeout(“Hide();”,2000); to window.setTimeout(Hide,2000);

+1

两者都有效JavaScript –

+0

没有引号更漂亮 – OptimusCrime

2

您提供的代码实际上不是问题。

如果你看看错误控制台(我假设你没有),你会看到像“nr11未定义”的错误。这就是为什么:

<a onclick="OpenCloseDiv(nr11)"

我不知道,你必须定义的变量nr11,但你可能会想使它成为一个字符串:"nr11"代替。

+0

特别是,该参数被称为'divName',但它被视为一个'HTMLElement',而不是一个名字...... –

0

我改变了代码如下:

<script type="text/javascript"> 
function OpenCloseDiv(divName){ 
    var div = document.getElementById(divName); 
    if (div.style.display == "none") { 
    div.style.display="block"; 
    } 
    else { 
    div.style.display="none"; 
    } 
} 
</script> 
<script type="text/javascript"> 
function OpenDiv(popUpDiv){ 
var div = document.getElementById(popUpDiv); 
div.style.display="block"; 
window.setTimeout("Hide();", 2000); 

} 
function OpenDiv(blanket){ 
var div = document.getElementById(blanket); 
div.style.display="block"; 
window.setTimeout("Hide();", 2000); 

} 
function Hide() 
{ 
document.getElementById('popUpDiv').style.display='none' 
document.getElementById('blanket').style.display='none' 
} 
</script> 

,然后补充说:“”(),似乎现在的工作。 :) 谢谢你的帮助!真的很感激它!