使srcset属性在损坏的HTML标记中适用于Internet Explorer

时间:2017-07-11 15:34:40

标签: javascript jquery cross-browser frontend

我有这个破坏的img标签,它在Chrome和Edge浏览器中运行良好。即使src属性有问题,它也会加载所有图像。

<a href="https://www.prikkabelled.nl/feestverlichting-voor-de-achtertuin/">
  <img src="<img width="806" height="605" src="https://www.prikkabelled.nl/wp-content/uploads/Feestverlichting-voor-in-de-achtertuin.jpg" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" srcset="https://www.prikkabelled.nl/wp-content/uploads/Feestverlichting-voor-in-de-achtertuin.jpg 806w, https://www.prikkabelled.nl/wp-content/uploads/Feestverlichting-voor-in-de-achtertuin-152x114.jpg 152w, https://www.prikkabelled.nl/wp-content/uploads/Feestverlichting-voor-in-de-achtertuin-768x576.jpg 768w, https://www.prikkabelled.nl/wp-content/uploads/Feestverlichting-voor-in-de-achtertuin-253x190.jpg 253w, https://www.prikkabelled.nl/wp-content/uploads/Feestverlichting-voor-in-de-achtertuin-506x380.jpg 506w, https://www.prikkabelled.nl/wp-content/uploads/Feestverlichting-voor-in-de-achtertuin-600x450.jpg 600w, https://www.prikkabelled.nl/wp-content/uploads/Feestverlichting-voor-in-de-achtertuin-200x150.jpg 200w" sizes="(max-width: 806px) 100vw, 806px" />
</a>

但是,Internet Explorer拒绝加载图像。我知道这应该在源头修复,但我不对此负责。

我们可以应用某种前端修复,以便在IE中加载图像吗?

我试过一起删除src属性,但无济于事

jQuery( "img.attachment-post-thumbnail" ).removeAttr('src');

1 个答案:

答案 0 :(得分:0)

您的HTML已损坏。嵌套img标签是不正确的。如果您无法修复可怕的HTML,可能会尝试使用某些js将url从第一个标记的格式错误的src属性中拉出来?

  $('a img').each(function(){
    $(this).parents('a').html($(this).attr('src'))
  })