$("a[rel='view-show-info']").click(function() {
$(this).parent().next('.show-info').slideToggle(70);
var img = $("img", this).attr("src");
if( img == "<?=base_url();?>assets/images/plus.png") // or check the end of the path or similar
$("img", this).attr("src", "/images/minus.png");
else
$("img", this).attr("src", "/images/plus.png");
return false;
});
<a href="#" rel="view-show-info" class="view-more">
<img src="/images/plus.png" alt="expand selection">
</a>
根据用户点击的内容显示正负图像。
我想在链接上添加标题,如果图像显示的是minus.png图像,则将标题设置为title =“contract selection”,如果显示的是plus.png图像,则将其设置为title = “扩大选择”
所以链接就像:
minus.png:
<a href="#" rel="view-show-info" class="view-more" title="contract selection">
<img src="/images/minus.png" alt="contract selection">
</a>
plus.png
<a href="#" rel="view-show-info" class="view-more" title="expand selection">
<img src="/images/plus.png" alt="expand selection">
</a>
我想我必须使用追加功能,但就我所知,任何帮助都是值得赞赏的。
答案 0 :(得分:2)
您可以使用.closest
遍历树并找到锚点(这样您就可以更改它的标题属性):
var src = '/images/plus.png';
var title = 'expand selection';
if( img == "<?=base_url();?>assets/images/plus.png")
{
src = '/images/minus.png';
title = 'collapse selection';
}
$("img", this) // grab your image (per normal)
.attr({'src':src,'alt':title}) // change the source
.closest('a') // go up the three to find the anchor
.attr('title',title) // change the anchor's title
编辑哎呀,你要去找锚 EDIT2 稍微更改了代码,使其更加流线型化。现在也改变了img alt属性。 (仍在IE上工作)
答案 1 :(得分:0)
if( img == "<?=base_url();?>assets/images/plus.png"){
$("img", this).attr("src", "/images/minus.png").parent().attr('title', 'contract selection');
} else {
$("img", this).attr("src", "/images/plus.png").parent().attr('title', 'expand selection');
}