當我把img標籤我動態創建src屬性。有沒有測試的方式,如果將src(路徑在圖像的位置)實際上與JavaScript才能避免得到存在:看看IMG SRC的存在
回答
可以使用error
事件:
var im = document.getElementById('imageID'); // or select based on classes
im.onerror = function(){
// image not found or change src like this as default image:
im.src = 'new path';
};
在線版本:
<img src="whatever" onError="this.src = 'new default path'" />
或者
<img src="whatever" onError="doSomething();" />
<img>
標籤支持這些事件:
abort
(onAbort)error
(onError的)load
(的onLoad)
更多信息:
我在其他論壇看到,它不能在IE中工作,是正確的嗎? –
@Mr:適用於我:http://jsbin.com/egohud – Sarfraz
對,謝謝!可能更早的版本,誰知道xD感謝。 –
可以使以前的ajax調用(與head
方法),並看到服務器返回代碼 或者您可以使用onerror
事件改變網址或者隱藏它,例如
<img src="notexist.jpg" onerror="this.style.visibility = 'hidden'">
(我用內嵌屬性只是爲了解釋的想法)
非常棒的例子。奇蹟般有效。 –
你接近這個錯誤的方式。
當您生成與服務器端腳本你的鏈接,檢查那裏的文件是否存在(通過在PHP中使用file_exists()
爲例)。
你不應該依賴於JavaScript時,你可以在服務器端做的,如JavaScript可以改變和殘疾人。
問問自己,你是如何產生的src=
屬性,並檢查那裏的文件是否存在,並提供一種替代方法。
如果動態創建SRC使用JavaScript,你可以使用這個:
var obj = new Image();
obj.src = "http://www.javatpoint.com/images/javascript/javascript_logo.png";
if (obj.complete) {
alert('worked');
} else {
alert('doesnt work');
}
圖像存在於以下路徑中,但是當我運行代碼片段時,它顯示'沒有工作'。是因爲'同源的政策'嗎? – yalpertem
這是因爲,obj.complete返回false。代碼立即執行。而國家還沒有完成。所以它總是去其他塊 –
- 1. img的src應該如何看起來像
- 2. Backbone.js查看img onload
- 3. XMLWorker沒有看到img(itextsharp)
- 4. get_post_meta在img src返回src
- 5. img查看器與Qt
- 6. IMG SRC
- 7. img src on img clickjj
- 8. JavaScript的IMG SRC
- 9. 如何查看.img文件?
- 10. 將img src存儲在php變量中
- 11. 檢查img-src是否存在與角
- 12. 無法在「img src =」
- 13. 更改img的src
- 14. document.write with img src
- 15. img src =「localStorage.getItem('icon')」?
- 16. concdtional IMG SRC
- 17. IMG SRC和Javascript
- 18. 綁定IMG SRC
- 19. 改變IMG SRC
- 20. img src SYSTEMDRIVE
- 21. Thymeleaf conditional img src
- 22. Htmlpurifier IMG SRC purify
- 23. PHP IMG SRC
- 24. 從IMG SRC
- 25. 變化IMG SRC
- 26. 關於IMG SRC
- 27. 在以下img src中使用img src參考
- 28. 看看什麼文件在幀緩存
- 29. 查看不存在
- 30. < img src>在DIV
你可能要考慮使用一個服務器端腳本來檢查這是瀏覽器可以禁用JavaScript。 – rogerlsmith
定義「實際存在」。由於跨域來源策略,您將無法檢查瀏覽器使用Javascript從遠程站點檢索的圖像,因此您要求的內容可能不可行。您可以將URL發送到服務器並讓它下載文件,但從安全角度來看這是一個壞主意。 – Borealid
我找到了這篇文章。它應該幫助你。 http://www.irt.org/script/52.htm –