[英]Changing <td> background-color when hovering over an image
我正在寻找本主题中描述的功能。 当用户将鼠标悬停在图像(id =“ sie”)上时,表格单元格(id =“ sein_img”)的背景应更改。 我尝试使用此代码,但不确定为什么它不起作用。 帮助将不胜感激!
<script type="text/javascript">
document.getElementById("sein_img").onmouseover = function() {
document.getElementById("sie").style.backgroundColor = "red";
}
</script>
<td id="sie" style="background-color: #f3f5f7;"> sie</td>
<img id="sein_img" src="images/stories/bullet_white.png" />
您的脚本可以正常工作,但是仅当您在受影响的HTML标记初始化后执行<script>
(在您的情况下为ID为sein_img
的<div>
)。 该元素尚不可用,因此鼠标悬停侦听器未设置为该元素(通过document.getElementById()
获得的元素undefined
。
因此,要解决您的问题,您可以选择以下两个选项:
<script>
标记移到页面底部,或者至少移到要设置侦听器的最后一个元素之后。 $(document).ready(function() { ... });
)执行此操作 渲染html后,移动脚本以执行。 我认为它也只能与有效的html表一起使用。
<table><tr><td id="sie" style="background-color: #f3f5f7;"> sie</td></tr></table>
<script type="text/javascript">
document.getElementById("sein_img").onmouseover = function() {
document.getElementById("sie").style.backgroundColor = "red";
}
</script>
您需要在html代码之后编写此<script />
。 您可以检查这个矮人 。
问题是:
<table> <td id="sie" style="background-color: #f3f5f7;"> sie</td> </table> <img id="sein_img" src="images/stories/bullet_white.png" /> <script type="text/javascript"> document.getElementById("sein_img").onmouseover = function() { document.getElementById("sie").style.backgroundColor = "red"; } </script>
如果只是将标签放在主体底部,则代码将无法工作。
<td id="sie" style="background-color: #f3f5f7;"> sie</td> <img id="sein_img" src="images/stories/bullet_white.png" /> <script type="text/javascript"> document.getElementById("sein_img").onmouseover = function() { document.getElementById("sie").style.backgroundColor = "red"; } </script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.