2012-10-27 31 views
2

我試圖加載CORS殘疾的圖像,並且得到錯誤:抓CORS錯誤

Cross-origin image load denied by Cross-Origin Resource Sharing policy. 

我試圖捕捉錯誤as follows,但是這顯然是行不通的。

如何在設置圖像的.src屬性後捕獲CORS錯誤?

+0

請在您的問題中發佈您的代碼(至少相關部分),而不是在外部(不相關)網站上。 – Bergi

回答

4

Use the onError event

if(image.addEventListener) { 
    image.addEventListener('error', function (e) { 
     e.preventDefault(); // Prevent error from getting thrown 
     // Handle error here 
    }); 
} else { 
    // Old IE uses .attachEvent instead 
    image.attachEvent('onerror', function (e) { 
     // Handle error here 
     return false; // Prevent propagation 
    }); 
} 

代碼可能應該合併,所以你不必編寫你的代碼兩次,但希望你有想法。

+0

現代IE版本支持['addEventListener'](http://msdn.microsoft.com/en-us/library/ie/ff975245(v = vs.85).aspx)。只有舊版本需要'attachEvent'。 – Sampson

+0

更多的人使用IE8比IE9 Jonathan。 – AlienWebguy

+0

當然,如果你使用的是框架,那麼'addEventListener'和'attachEvent'都不是必需的:-) –