我经常使用一种旧方法将“-rollover”附加到 img 以节省大量 css 规则,但我遇到了一个无法使其工作的实例。
通常我只是给 img 一个翻转类,然后使用这个 jQuery:
$(".rollover").hover(function() {
$(this).attr("src", $(this).attr("src").split(".").join("-rollover."));
}, function() {
$(this).attr("src", $(this).attr("src").split("-rollover.").join("."));
});
但是在这种情况下,img 位于一个元素中,我希望元素的悬停来更改 img src。
这是 HTML 的示例:
<li class="rollover-child grid-item-2">
<a href="#">
<img src="img/copy/file.jpg" width="231" height="130" />
<span class="gl-grid-text">
<span class="gl-grid-title">Book!</span>
<span class="gl-grid-sub-text">View upcoming events</span>
<span class="gl-grid-arrow">></span>
</span>
</a>
</li>
还有一些列表项没有锚点但仍然需要翻转效果,例如
<li class="rollover-child>
<img src="img/copy/file.jpg" width="231" height="130" />
</li>
我正在尝试的 jQuery 是这样的:
$(".rollover-child").hover(function() {
$('img', this).attr("src", $(this).attr("src").split(".").join("-rollover."));
}, function() {
$('img', this).attr("src", $(this).attr("src").split("-rollover.").join("."));
});
但我根本无法让它工作。我已经尝试了 find 和 children 和兄弟姐妹的变体,但我一定做错了什么。
非常感谢任何帮助。
干杯,亚历克斯