我有一个javascript,可以创建几个div元素,并在其中为每个图像网址中的每一个创建一个img标记。我还有一个超时功能,在一段时间之后应该导致图像停止加载。在FF中,这可以通过将img标签的src属性设置为空白来实现。在webkit浏览器中,它是一个不同的故事,因为所有请求都是异步的。
到目前为止我的代码看起来与此类似:
function tag(url_array, timeout)
{
var _tag_div = document.getElementById('tag_div');
for(var i in url_array)
{
var e = document.createElement('div');
e.setAttribute('id', '_tag_' + i);
e.innerHTML = '<img src="' + urls[i] + '"/>';
_tag_div.appendChild(e);
setTimeout(blank_img.bind(window, i), timeout);
}
function blank_img(x)
{
document.getElementById('_tag_' + x).firstChild.src = '';
}
}
正如我所说,这在FF中运行良好,但在webkit浏览器中,它无法阻止加载图像。鉴于这将用于第三方页面上的像素跟踪系统,代码需要尽可能轻量级。有没有人知道这个问题的解决方案,或者可以帮助我找到一个?提前致谢, -CarbonX
答案 0 :(得分:0)
尝试使用removeChild
完全从DOM中删除它们,例如:
function blank_img(x) {
var imgTag = document.getElementById('_tag_' + x);
if(imgTag) { imgTag.parentNode.removeChild(imgTag); }
}
我假设你以后不需要这些标签......