Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.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
Ajax 使图像不添加到img';s onerror处理器_Ajax_Dhtml - Fatal编程技术网

Ajax 使图像不添加到img';s onerror处理器

Ajax 使图像不添加到img';s onerror处理器,ajax,dhtml,Ajax,Dhtml,我正在努力实现以下目标: onerror="this.parentElement.removeChild(this);" 我正在加载服务器上可能存在或不存在的映像。 当映像不存在时,将触发映像onerror处理程序。 我想做的是从dom树中删除图像(而不是使损坏的图像图标出现) 以下是: onerror="this.parentElement.removeChild(this);" 适用于Chrome,但不适用于firefox。原因是图像尚未附加到domtree(parentElement为

我正在努力实现以下目标:

onerror="this.parentElement.removeChild(this);"
我正在加载服务器上可能存在或不存在的映像。 当映像不存在时,将触发映像onerror处理程序。 我想做的是从dom树中删除图像(而不是使损坏的图像图标出现)

以下是:

onerror="this.parentElement.removeChild(this);"
适用于Chrome,但不适用于firefox。原因是图像尚未附加到domtree(parentElement为null)

我还尝试将src属性设置为服务器上的某个透明映像,但是我的onload evenhandler会被调用eventhough我设置了:

onerror="this.onload=null;this.src='transparentimage';"
有没有其他方法可以实现我想要的

我想不出来

有什么好主意吗

致以最良好的祝愿


Niclas

此问题的简单解决方案:

<img src="imageURL" style="display:none" onload="this.style.display='block'"/>


也许它会帮助别人

此问题的简单解决方案:

<img src="imageURL" style="display:none" onload="this.style.display='block'"/>


也许它会帮助别人

以下是使用jQuery的方法:
$(“img”)。错误(函数(){ $(this.remove(); });


注意,对于IE,应该在HTML中的项目之后设置错误处理程序。如果在document.ready()上执行此操作,它将不会触发。

以下是如何使用jQuery执行此操作:
$(“img”)。错误(函数(){ $(this.remove(); });


注意,对于IE,应该在HTML中的项目之后设置错误处理程序。如果您在document.ready()上执行此操作,它将不会触发。

我不知道这是否适用于普通的JavaScript加载事件,但jQuery文档说它的.load()不可靠()。因此,使用OneError可能更好。样式设置为“display:block”,onerror将display设置为none。我不知道这是否适用于普通JavaScript加载事件,但是jQuery文档说它的.load()不可靠()。因此,使用OneError可能更好。样式设置为“显示:块”,OneError将“显示”设置为“无”。