如何用图像替换链接文本

时间:2013-10-18 19:08:32

标签: jquery

如何用图像替换链接文本?

我已经尝试过这个脚本了:

$(document).ready(function() {
  $('a:contains("edit")').html('<img src="edit.png"/>');
});

但没有任何运气。 我在这里做错了吗?

HTML

<a href="/ideas/bpul_dishes/edit">Edit</a>

1 个答案:

答案 0 :(得分:2)

如果我理解正确,这就是你想要的。 “编辑”需要在href中,而不是在a - 标签中包含的文本中,对吗?

http://jsfiddle.net/BramVanroy/t98d7/2/

$(document).ready(function() {
  $('a[href*="edit"]').html('<img src="edit.png"/>');
});

如果您的意思是,正如评论所示,编辑必须在a - 标记内发生,那么以下解决方案将起作用。如果有必要,我允许以大写字母开头。

http://jsfiddle.net/BramVanroy/t98d7/4/

$(document).ready(function() {
    $('a:contains("Edit"), a:contains("edit")').html('<img src="edit.png"/>');
});

或使用正则表达式(i是修饰符,导致正则表达式不区分大小写)。

http://jsfiddle.net/BramVanroy/t98d7/25/

$(document).ready(function () {
    $("a").filter(function () {
        return /edit/i.test($(this).text());
    }).html('<img src="edit.png"/>');
});