在鼠标悬停和鼠标悬停时更改图像的正确方法是什么(使用/不使用jQuery)?
<a href="#" id="name">
<img title="Hello" src="/ico/view.png" onmouseover="$(this).attr('src','/ico/view.hover.png')" />
</a>
好的,这是可行的,但是之后如何改回原始图像mouseout
?
如果可能的话,我想内联做这件事,没有 document.ready 函数。
在鼠标悬停和鼠标悬停时更改图像的正确方法是什么(使用/不使用jQuery)?
<a href="#" id="name">
<img title="Hello" src="/ico/view.png" onmouseover="$(this).attr('src','/ico/view.hover.png')" />
</a>
好的,这是可行的,但是之后如何改回原始图像mouseout
?
如果可能的话,我想内联做这件事,没有 document.ready 函数。
这是用于更改图像 onmouseover 和 onmouseout 的原生 javascript 内联代码:
<a href="#" id="name">
<img title="Hello" src="/ico/view.png" onmouseover="this.src='/ico/view.hover.png'" onmouseout="this.src='/ico/view.png'" />
</a>
尝试这样的事情:
HTML:
<img src='/folder/image1.jpg' id='imageid'/>
jQuery: </p>
$('#imageid').hover(function() {
$(this).attr('src', '/folder/image2.jpg');
}, function() {
$(this).attr('src', '/folder/image1.jpg');
});
编辑:( 在发布 OP HTML 之后)
HTML:
<a href="#" id="name">
<img title="Hello" src="/ico/view.png"/>
</a>
jQuery:
$('#name img').hover(function() {
$(this).attr('src', '/ico/view1.png');
}, function() {
$(this).attr('src', '/ico/view.png');
});
你在 / 之前放一两个点
('src','./ico/view.hover.png')"
这是一个例子:
HTML 代码:
<img id="myImg" src="http://static.jquery.com/files/rocker/images/logo_jquery_215x53.gif"/>
JavaScript 代码:
$(document).ready(function() {
$( "#myImg" ).mouseover(function(){
$(this).attr("src", "http://www.jqueryui.com/images/logo.gif");
});
$( "#myImg" ).mouseout(function(){
$(this).attr("src", "http://static.jquery.com/files/rocker/images/logo_jquery_215x53.gif");
});
});
编辑:对不起,你的代码有点奇怪。现在我明白你在做什么了。;) 当然,悬停方法更好。
jQuery 有.mouseover()
和.html()
. 您可以将鼠标悬停事件绑定到一个函数:
当您获得指示光标不再悬在 div 上方的 mouseover 事件时,可以执行相同的操作。
你可以只使用 CSS 来做到这一点。
您需要在 中放置另一个标签,<a>
然后您可以更改.background-image
a:hover
IE
HTML:
<a href="#" id="name">
<span> </span>
</a>
CSS:
a#name span{
background-image:url(image/path);
}
a#name:hover span{
background-image:url(another/image/path);
}
<a href="" onMouseOver="document.MyImage.src='http://icons.iconarchive.com/icons/uiconstock/round-edge-social/72/ask-icon.png';" onMouseOut="document.MyImage.src='http://icons.iconarchive.com/icons/uiconstock/round-edge-social/72/arto-icon.png';">
<img src="http://icons.iconarchive.com/icons/uiconstock/round-edge-social/72/arto-icon.png" name="MyImage">
我知道有人以同样的方式回答了这个问题,但我做了自己的研究,我之前写过这篇文章是为了看到那个答案。所以:我一直在寻找简单的内联 JavaScript 的东西,只是在 上img
,而不是“包装”到a
标签中(所以document.MyImage
我使用了 ,而不是this.src
)
<img
onMouseOver="this.src='ico/view.hover.png';"
onMouseOut="this.src='ico/view.png';"
src="ico/view.png" alt="hover effect" />
它适用于所有当前更新的浏览器;IE 11(我也在 IE5 及以上版本的 IE 开发者工具中对其进行了测试)、Chrome、Firefox、Opera、Edge。