我在我們的網站上有一些跟蹤像素,如果他們的服務器出現故障或速度緩慢,我想要保護它們免受影響我們的用戶體驗。指定瀏覽器嘗試加載給定img的最長時間的最簡單方法是什麼 - 即嘗試100毫秒然後放棄? (我寧願不跟蹤給定的客戶,也不願意讓第三方服務器上的服務器掛在我們的網站上)。<img src> w/timeout?
回答
你應該在文檔準備好時加載它們。 或最後一行(在html中)。這樣 - 它不會傷害用戶體驗。準備好的文件也可以用於jQuery。
但你可以使用window.load。
作爲一項規則(並非總是) - 所有腳本都應該位於頁面的末尾。
如果要強制超時KILL:
創建img
標籤。
的load
事件附加到所述IMG(這個函數將設置標誌:下載= 1)
設置src。
與setTimeout
功能你會殺死IMG。
怎麼樣?
如果在X MS下載了== 0,然後殺死。
所以:每個加載事件(來自IMg)都設置一個標誌(下載= 1)。
你的超時功能不關心什麼!在x MS之後,她要殺死img - 只有下載的== 0。
您可以在IMG標記中調用服務器進程。讓它擔心超時負載。
標籤中已經有一個服務器進程:它提供了「圖像」。這是花費時間,而這需要在客戶端取消。如果取消交給服務器,取消也需要時間。 –
所以穿上它,看着時鐘。 – ethrbunny
您可以插入<img>
和JavaScript,並使用setTimeout()
在100ms後刪除它。
示例使用jQuery:
var tracker = $("<img>", { src: trackingUrl }).appendTo(document.body);
setTimeout(function() { tracker.remove(); }, 100);
你將不得不使用JavaScript來做到這一點,沒有什麼天然的HTML/HTTP,會做此頁爲基礎。谷歌周圍的「HTML IMG超時」。
- 1. 是否<img alt="foo" />等於<img alt="foo"></img>?
- 2. xhtml在<img .... />和<img ...>之間的區別</img>?
- 3. Javascript getElementById <img>
- 4. <img>屬性
- 5. 我該如何中心<img /><h1>...</h1><img /> HTML + CSS?
- 6. 用<img src="">替換../IMG/xEPI_STOPPED_TOT.gif
- 7. 包裹<a>標籤<img />與href = img src?
- 8. <img><a href.....> img和一個
- 9. JSP:元素創建<img></img>元素
- 10. TinyMCE將<img />轉換爲<img>
- 11. flv img does not appear <fb:flv src =「」..... img ='img url'...>
- 12. strip_tags - Strip <a>標籤<img>
- 13. addClass到<img>裏面<a>
- 14. <a>比<img>孩子
- 15. <img> in <canvas>未顯示
- 16. <h:graphicImage>優於<img>
- 17. 造型<img>在<figure>
- 18. CSS動畫不<img>
- 19. echo an <img>標記
- 20. 淡入淡出<img>
- 21. drawImage()和<img>標記
- 22. 利用<img> -Tag
- 23. 得到的<img/>
- 24. 用一個<img>
- 25. 在<img>標籤
- 26. 從Cookie到<img Src="">
- 27. 居中<img>在
- 28. < img src>在DIV
- 29. <img>標籤和JSP
- 30. 防止<img>崩潰
是的,但狀態欄仍然顯示正在下載的數據,所以看起來還沒有完成。我真的很想有一個實際的方法來定義超時。 –
@MichaelReston看我的編輯。 –
爲什麼不考慮條件而不是刪除''? – Electro