使用jquery修改分离的html元素(更改img.src)

时间:2011-06-30 11:50:22

标签: javascript jquery dom

我想在html元素中为所有src img个标记添加前缀。

目前我的代码如下:

var html = ...;
$('img[src]', html).each(function(a) {
  var $t = $(this);
  var oldsrc = $t.attr('src');
  $t.attr({src: prefix + oldsrc});
}); 

另一种选择

_.each($('img', html), function(img) {
  var src = base + $(img).attr('src');
  img.src = src;
});

当我在dom上运行此代码时,它可以完美无缺。但是当我尝试针对一个分离的html对象运行它时,它将无法工作。 这会更新闭包中的img,但不会在img内更新html html

我在这里缺少什么?

解决方案不需要使用jquery(也可以是普通的javascript或骨干)

1 个答案:

答案 0 :(得分:0)

@pelix Kling指出:html需要是一个DOM元素,但它是一个字符串

html = $(html);

解决了问题