("*").each(function () {
if ($(this).children().length == 0) {
$(this).text($(this).text().replace('basketball','test'));
}
});
我只能将文本更改为另一个文本字符串,但如何传递图像?
答案 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。您可以根据需要进行调整。