jquery用图像替换文本,帮助

时间:2011-05-12 00:37:11

标签: javascript jquery

("*").each(function () { 
   if ($(this).children().length == 0) {
       $(this).text($(this).text().replace('basketball','test')); 
   } 
});

我只能将文本更改为另一个文本字符串,但如何传递图像?

3 个答案:

答案 0 :(得分:7)

("*").each(function () { 
   if ($(this).children().length == 0) {
      var newHTML = $(this).html().replace('basketball','<img src = "image.jpg" />');
      $(this).html(newHTML);
   } 
});

修改

我的错误。我以为你想要更换整个元素。看看我更新的答案。

答案 1 :(得分:2)

您需要修改html()而不是text()

您可以将代码简化为

$("*").filter(function() { return !$(this).children().length; })
      .html(function(index, old) { return old.replace('basketball', '<img ... />'); });

答案 2 :(得分:0)

我会为此推荐JQIR。如上所述,首先将"basketball"替换为"<span class="jqir">basketball</span>"。然后运行以下命令:

$(".jqir").jQIR("png", "images/");

这假设您有图像images / basketball.png。您可以根据需要进行调整。