是否可以在悬停时更改图像的src,然后再恢复原始状态?例如"文件名始终相同"改变的是数字。 1表示原件,2表示悬停。非常感谢您的建议。
代码:
<ul class="nav navbar-nav">
<li><a href="#">Featured</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Meet ATS<b class="caret"></b></a>
<ul class="dropdown-menu meet-ats-top">
<li><a href="#"><img src="/images/google1.png"></a></li>
<li><a href="#"><img src="/images/in1.png"></a></li>
<li><a href="#"><img src="/images/youtube1.png"></a></li>
<li><a href="#"><img src="/images/facebook1.png"></a></li>
<li><a href="#"><img src="/images/twitter1.png"></a></li>
</ul>
</li>
</ul>
答案 0 :(得分:2)
尝试
jQuery(function ($) {
$('.meet-ats-top li').hover(function () {
$(this).find('img').attr('src', function (i, src) {
return src.replace('1.png', '2.png')
})
}, function () {
$(this).find('img').attr('src', function (i, src) {
return src.replace('2.png', '1.png')
})
})
})
或者
jQuery(function ($) {
$('.meet-ats-top li').hover(function (e) {
$(this).find('img').attr('src', function (i, src) {
return src.replace(/(\d+)(?=\.)/, function (val) {
return e.type == 'mouseenter' ? 2 : 1
})
})
})
})
答案 1 :(得分:1)
答案 2 :(得分:1)
只需使用CSS。
HTML:
<ul class="dropdown-menu meet-ats-top">
<li><a href="#" class="google"></a></li>
...
</ul>
CSS:
.google {
background-image: url(/images/google.png);
>>You have to add width and height depending on the Image
}
.google:hover {
background-image: url(/images/google1.png);
}
编辑:
由于空a-Tag
没有任何尺寸,您应该在其中添加另一个div / span:
<li><a href="#" class="google">**<span></span>**</a></li>
这样的CSS:
.meet-ats-top a span { width: XYpx; height: XZpx; }
答案 3 :(得分:1)
您可以尝试以下操作:
$(".dropdown-menu li a img").hover(function(){
$(this).attr('src', $(this).attr('src').replace('1','2'));
}, function (){
$(this).attr('src', $(this).attr('src').replace('2','1'));
})
希望它有效!
答案 4 :(得分:0)
$('.dropdown-menu').on('hover', function(){
var a = $(this).find('img').attr('src');
var temp = a.split('.');
b = substr(0,a.temp[0]-1);
$(this).find('img').attr('src',b+'2.'+temp[1]);
});
希望这项工作!
答案 5 :(得分:0)
<强> 1。 CSS方式(正确)
使用CSS精灵。将所有这些社交论坛合并到一个文件中,并使用background-position
定位它们。它们都将一次性下载(1个HTTP请求)
<强> 2。 CSS方式(图像)
将所有图片放在html中并隐藏悬停
<li>
<a href="#">
<img src="/images/google1.png">
<img src="/images/google2.png">
</a>
</li>
你的CSS中的:
.dropdown-menu a img {
display: none; //this hides all images
}
.dropdown-menu a img:first-child {
display: inline-block; //this shows the first child image
}
.dropdown-menu a:hover img {
display: inline-block; //this shows all images on hover
}
.dropdown-menu a:hover img:first-child {
display: none; //this hides the first image on hover
}
答案 6 :(得分:0)
使用JS:
<a href="TARGET URL GOES HERE"><img src="URL OF FIRST IMAGE GOES HERE" onmouseover="this.src='URL OF SECOND IMAGE GOES HERE'" onmouseout="this.src='URL OF FIRST IMAGE GOES HERE'" /></a>
对你:
<ul class="nav navbar-nav">
<li><a href="#">Featured</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Meet ATS<b class="caret"></b></a>
<ul class="dropdown-menu meet-ats-top">
<li><a href="#"><img src="/images/google1.png" onmouseover="this.src='/images/google2.png'" onmouseout="this.src='/images/google1.png'" ></a></li>
<li><a href="#"><img src="/images/in1.png" onmouseover="this.src='/images/in2.png'" onmouseout="this.src='/images/in1.png'" ></a></li>
<li><a href="#"><img src="/images/youtube1.png" onmouseover="this.src='/images/youtube2.png'" onmouseout="this.src='/images/youtube1.png'" ></a></li>
<li><a href="#"><img src="/images/facebook1.png" onmouseover="this.src='/images/facebook2.png'" onmouseout="this.src='/images/facebook1.png'" ></a></li>
<li><a href="#"><img src="/images/twitter1.png" onmouseover="this.src='/images/twitter2.png'" onmouseout="this.src='/images/twitter1.png'" ></a></li>
</ul>
</li>
答案 7 :(得分:0)
Try this:
<div class="hover-img">
<img src="images/ui-ux-1.png" />
</div>
$(function() {
$(".hover-img").hover(function() {
$(this).find('img').attr("src", "images/ui-ux-2.png");
}, function() {
$(this).find('img').attr("src", "images/ui-ux-1.png");
});
})