1
<a href="#" 
    onmouseout="MM_swapImgRestore()" 
    onmouseover="MM_swapImage('Home','','Images/menuButtons/home_out.png',1)" 
    onclick="alert("Hello")" ><img onclick="alert("Hello")" 
    src="Images/menuButtons/home_on.png" 
    alt="Home" name="Home" width="164" height="64" border="0" id="Home" />
</a><br/>

我正在尝试创建一个带有翻转图像的导航菜单栏。翻转图像部分是由 Dreamweaver 创建的,因此所有这些MM_functions. 但是onclick,我想更改主框架的内容,而不仅仅是打开一个超链接。

所以我尝试onclick="JS_funtion()"onMouseDownonMouseUP。似乎没有任何效果。如示例所示,它甚至没有调用函数,我尝试调用alert()但仍然无法正常工作。我是 HTML/Javascript 新手。

我究竟做错了什么?

我的网站是www.sitebloviate.com

4

3 回答 3

3

Arjan 是对的,您不能在双引号属性中使用双引号。

其他事情:

  • 你不需要onclick在你的图像中,锚标签就可以了,
  • 设置href="#"通常是不好的做法。最好将其设为真正的链接,这样如果用户右键单击并选择“在新选项卡中打开”,它会将它们带到有意义的地方。

但是,要执行后者,您需要通过返回 false 来取消事件。

例子:

<a href="/path/to/real/page" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Home','','Images/menuButtons/home_out.png',1)" onclick="alert('Hello'); return false;" >
<img src="Images/menuButtons/home_on.png" alt="Home" name="Home" width="164" height="64" border="0" id="Home" /></a><br/>
于 2011-05-12T19:20:16.797 回答
2

如果您替换onclick="alert("Hello")"onclick="alert('Hello')"(注意 ( 和 ) 之间的不同引号),它将起作用。

于 2011-05-12T19:13:12.283 回答
1

我认为您的问题是您onclick="alert("Hello")"应该onclick="alert('Hello')"使用单引号来表示文字字符串。那里大概是窒息了。

于 2011-05-12T19:27:00.460 回答