今天我最终解决了我们网站上的IE 11问题,导致一些图片被错误显示。
所以在IE 11下运行:
var img = new Image();
img.src = "http://placehold.it/900x450";
document.body.appendChild(img);
var img2 = document.createElement('img');
img2.src = "http://placehold.it/900x450";
document.body.appendChild(img2);
似乎产生两种不同的输出。通过实例化图像对象创建的图像定义了宽度/高度属性,通过document.createElement函数创建的图像不会。
以下是我所看到的(JSFiddle here):
我还能够通过创建一个简单的HTML页面来复制这个问题(绝对肯定这不是由JSFiddle完成的某种魔术):
<!doctype html>
<html>
<head>
</head>
<body>
<script type="text/javascript">
var img = new Image();
var img2 = document.createElement('img');
img.src = "http://placehold.it/900x450";
document.body.appendChild(img);
img2.src = "http://placehold.it/900x450";
document.body.appendChild(img2);
</script>
</body>
</html>
最后这是我正在运行的IE版本:
我真的很感激,如果有人花了一点时间向我解释这是否是预期的行为,如果是,为什么。
提前致谢。