在背景中加载图像而不应用CSS样式

时间:2018-06-01 00:40:14

标签: javascript jquery

你能帮帮我吗?我已经使用脚本在加载图像时设置图像但是样式没有一起应用。

$('img[data-src]').each(function() {
   var img = $(this);
   var newimg = new Image();
   newimg.src = img.attr('data-src');
   newimg.setAttribute('class', img.attr('data-src'));
   newimg.onload = function() {
   img.replaceWith(newimg);
   };
});

我无法将HTML& CSS样式因为每个< img> 标签有自定义样式,所以我需要使上面的脚本能够继承样式。

我该怎么做才能解决这个问题?感谢

1 个答案:

答案 0 :(得分:1)

那是因为您正在创建一个不具有相同classstyle属性的新元素。只需将它们复制到新元素即可。

$('img[data-src]').each(function() {
   var img = $(this);
   var newimg = new Image();
   newimg.src = img.attr('data-src');
   newimg.setAttribute('class', img.attr('class'));
   newimg.setAttribute('style', img.attr('style'));
   newimg.onload = function() {
   img.replaceWith(newimg);
   };
});