Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在webkit浏览器中跟踪像素超时_Javascript_Webkit - Fatal编程技术网

Javascript 在webkit浏览器中跟踪像素超时

Javascript 在webkit浏览器中跟踪像素超时,javascript,webkit,Javascript,Webkit,我有一个javascript,它创建了几个div元素,并在其中为每个图像URL创建了一个img标记。我还有一个超时函数,在一段时间后应该会导致图像停止加载。在FF中,这可以通过将img标记的src属性设置为空来实现。在webkit浏览器中,情况就不同了,因为所有请求都是异步发出的 到目前为止,我的代码与此类似: function tag(url_array, timeout) { var _tag_div = document.getElementById('tag_div');

我有一个javascript,它创建了几个div元素,并在其中为每个图像URL创建了一个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 = '';
    }

}
函数标记(url\u数组,超时)
{
var_tag_div=document.getElementById('tag_div');
for(url_数组中的变量i)
{
var e=document.createElement('div');
e、 setAttribute('id','u标记'+i);
e、 innerHTML='';
_标签分区附件(e);
setTimeout(空白\u img.bind(窗口,i),超时);
}
函数blank_img(x)
{
document.getElementById(''u标记'+x).firstChild.src='';
}
}
正如我所说,这在FF中运行良好,但在webkit浏览器中,它无法阻止图像的加载。鉴于这将用于第三方页面上的像素跟踪系统,代码需要尽可能轻量级。有人知道这个问题的解决方案吗,或者可以帮助我找到一个?提前感谢,,
-CarbonX

尝试使用
removeChild
将其从DOM中完全删除,例如:

function blank_img(x) { 
    var imgTag = document.getElementById('_tag_' + x);
    if(imgTag) { imgTag.parentNode.removeChild(imgTag); }
} 

我假设你以后不需要这些标签…

你不能让服务器跟踪实际的网页请求而不是讨厌的像素吗?哈哈,我希望。。。可悲的是,这些不是我们的组织,它们是在我们的系统上运行的。不幸的是,这种方法也不能阻止请求。谢谢你的努力。