0

下面,我有一段 javascript 代码。

var htmlBlurb = '<div> hello <font color=red>world</font>!!!</div>';
$(htmlBlurb).find('font').each(function(e){
    $(this).html("Javascript");
});
console.log(htmlBlurb);

我期待 htmlBlurb 中的输出为

<div> hello <font color=red>Javascript</font>!!!</div>

htmlBlurb没有改变。

有人可以解释我在这里缺少什么吗?

4

1 回答 1

2

htmlBlurb是一个字符串。虽然$(htmlBlurb)创建一个元素并临时存储它,但它不会修改原始字符串,就像运行操作$('a')不会修改字符串字面量一样'a'

相反,请执行以下操作:

var htmlBlurb = '<div> hello <font color=red>world</font>!!!</div>';
var blurb=$(htmlBlurb)
blurb.find('font').each(function(e){
    $(this).html("Javascript");
});
console.log(blurb.wrapAll('<div></div>').parent().html());
于 2013-10-07T17:49:54.137 回答