【问题标题】:This javascript code doesn't work in Internet Explorer 11 [duplicate]此 javascript 代码在 Internet Explorer 11 中不起作用 [重复]
【发布时间】:2019-01-19 19:45:48
【问题描述】:
 <script>
const images = document.querySelectorAll('.view-content img')
images.forEach(item => {
  const src = item.getAttribute('data-original');
  const newSrc = 'https://example.com' + src;
  item.setAttribute('src', newSrc);
})
</script>

此代码更改

&lt;img src="/data/img/img_01.png"&gt;

&lt;img src="https://example.com/data/img/img_01.png"&gt;

如您所见。 但此代码在 Internet Explorer 11 中不起作用。 如何让这段代码在 Internet Explorer 中运行?

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    箭头函数forEach()方法在IE11中都不兼容。您需要像这样使用 ES5 重写上述内容:

    <script>
        const images = document.querySelectorAll('.view-content img');
    
        for(var i = 0; i < images.length; i++) {
            let src = images[i].getAttribute('data-original');
            let newSrc = 'https://example.com' + src;
            images[i].setAttribute('src', newSrc);
        }
    </script>
    

    或者,如果您更喜欢使用 ES6 编写 JavaScript,您可以使用 BabelJS 之类的工具链在生产环境中将 JavaScript ES6 编译为 JavaScript ES5。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-26
      • 2014-11-21
      • 2016-10-20
      • 2019-08-12
      • 2014-08-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多