<image src = 'image.png' onerror = "handleError(this)" onload = "handleLoad(this)">
function handleError(n){
getFirstChild(n.parentNode).style.display = '',n.style.display = 'none';
}
function handleLoad(n){
getFirstChild(n.parentNode).style.display = 'none',n.style.display = '';
}
我有一個單獨的函數getFirstChild但沒有任何與以下問題標記爲一個HTML圖像。
基本上IE11中發生的事情是,onLoad處理程序被觸發,我的函數正確設置顯示,但是在onload被觸發後,onerror也被觸發並覆蓋handleLoad函數完成的操作。 不幸的是,這個應用程序只支持在IE瀏覽器中,但它只發生在IE11版本中,在IE10中按預期工作。
我不確定onLoad如何觸發,然後在onLoad從src中找到圖像後立即觸發onError。
第二個編輯
如下出手,我無法重現這在IE11一個jfiddle評論。這可能是因爲我的代碼試圖在同一時間做不同的事情,但有什麼方法可以看出爲什麼onerror處理程序是觸發器?我嘗試打印出圖像項目的src,但這似乎不是問題,因爲onError和onLoad都返回相同的src,並且圖像顯然存在。 無論如何,我可以看到是什麼導致onError觸發?
不知道這是一個問題,但是你錯過了周圍的處理器報價圖片標籤內。 – AWolf 2015-02-18 00:57:02
啊,好的,沒問題。我用這個[jsFiddle](http://jsfiddle.net/awolf2904/pxx3u9om/)得不到你在IE11(Win8)中描述的錯誤。 – AWolf 2015-02-18 01:13:22
@AWolf當我有機會時,我會用HTML的格式結構更新問題。 – 2015-02-18 01:41:07