我有这段JavaScript代码,当您将鼠标悬停在相关的锚标记上时,它会更改图像的不透明度。我想知道如何使其也反向工作?将鼠标悬停在图像上时,请更改锚标记。
http://jsfiddle.net/7EzuS/8/
的JavaScript
$('.link a').hover(
function () {
$('img.'+$(this).attr('class')).addClass('hovered');
},
function () {
$('img.'+$(this).attr('class')).removeClass('hovered');
});
的HTML
<ul>
<li><div class="link"><a href="#" class="link_a">Link A</a></div></li>
<li><div class="link"><a href="#" class="link_b">Link B</a></div></li>
<li><a href="#"><img class="link_a" src="http://somthing.jpg" /></a></li>
<li><a href="#"><img class="link_b" src="http://somthing.jpg" /></a></li>
</ul>
的CSS
.hovered {opacity: 1.0;}
img {opacity: 0.5;}
img:hover {opacity: 1.0;}
谢谢。
最佳答案
在这种情况下,您应该处理id而不是类,以便获得通用解决方案,请看here
HTML:
<ul>
<li><div class="link"><a href="#" id="link_a" class="hoverLink">Link A</a></div></li>
<li><div class="link"><a href="#" id="link_b" class="hoverLink">Link B</a></div></li>
<li><a href="#"><img id="link_a_img" class="hoverImg" src="http://images.apple.com/support/ipod/images/do_not_disconnect_icon.gif" /></a></li>
<li><a href="#"><img id="link_b_img" class="hoverImg" src="http://atlanta.braves.mlb.com/images/global/alert_icon.gif" /></a></li>
</ul>
JS:
$('.link a').hover(
function () {
$('#' + $(this).attr('id') + '_img').addClass('hovered');
},
function () {
$('#' + $(this).attr('id') + '_img').removeClass('hovered');
});
$('img.hoverImg').hover(
function () {
var idParts = $(this).attr('id').split('_');
var id = idParts[0] + "_" + idParts[1];
$('#' + id).addClass('hovered');
},
function () {
var idParts = $(this).attr('id').split('_');
var id = idParts[0] + "_" + idParts[1];
$('#' + id).removeClass('hovered');
});
CSS:
.hovered {opacity: 1.0; font-weight:bold;}
img {opacity: 0.5;}
img:hover {opacity: 1.0;}
关于javascript - 悬停在文本上时使用JavaScript更改图像,悬停在图像上时使用文本更改文本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22809135/