0

为什么这段代码没有按预期在鼠标悬停时交换图像?:

<a href="#" onMouseOver="
 if (document.the_image.src == '01.jpg')
 {
  document.the_image.src = '02.jpg';
 }
 else if (document.the_image.src == '02.jpg')
 {
  document.the_image.src = '03.jpg';
 }
 else
 {
  document.the_image.src = '01.jpg';
 }
 ">
Some image</a><br>
4

3 回答 3

1

为了补充@jaywon 的答案,如果是这种情况,您可以使用它来确保无论绝对 URL 还是相对 URL 都匹配。

if (document.the_image.src.indexOf('01.jpg') > 0) {
...
}
于 2010-04-10T02:28:57.757 回答
1

最有可能在呈现的 HTML 中,图像源是绝对 URL,因此src可能是http://mydomain.com/01.jpg

要对此进行测试,请尝试在代码中设置alert()以查看实际的src值是多少

您可能还应该将该代码放在一个函数中,这是很多 javascript 放入内联 HTML 的。

于 2010-04-10T02:22:48.423 回答
0

最后,我想出了如何发布完整的代码。非常感谢!:

<HTML>
<head>

<title></title>
<script language="javascript">
    var name = prompt('What is your name?', '');
    document.writeln('Welcome, ' + name + '.');
</script>
</head>


<body>

<a href="#" onMouseOver="
    if (document.the_image.src == '01.jpg')
    {
        document.the_image.src = '02.jpg';
    }
    else if (document.the_image.src == '02.jpg')
    {
        document.the_image.src = '03.jpg';
    }
    else
    {
        document.the_image.src = '01.jpg';
    }
    ">
<img src="01.jpg" name="the_image"></a><br>


</body>

</HTML>
于 2010-04-10T03:22:41.803 回答