Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jquery修改分离的html元素(change img.src)_Javascript_Jquery_Dom - Fatal编程技术网

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

Javascript 使用jquery修改分离的html元素(change img.src),javascript,jquery,dom,Javascript,Jquery,Dom,我想在html元素中为img标记的所有src加前缀 当前我的代码如下所示: 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 + $

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

当前我的代码如下所示:

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,但不会更新html中的img

我错过了什么


解决方案不需要使用jquery,也可以是纯javascript或主干,正如@Felix Kling指出的那样:html需要是DOM元素,但它是字符串

html = $(html);

修正了html是字符串还是DOM元素的问题?如果它是一个DOM元素,它将工作…什么意思,分离的html对象?你怎么知道它不起作用?当然应该。谢谢你。html=$html;修正了这个问题,你可以把它作为答案发布;