[英]Javascript: How can I delay returning a value for img.complete
我編寫了一個腳本來測試IMG標記中的SVG支持:
function SVGinIMG() {
var SVGdata = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzUiIGhlaWdodD0iMjc1Ij48L3N2Zz4%3D'
var i = document.createElement('img');
i.setAttribute('src',SVGdata);
return i.complete;
}
window.onload = function() {
var hasSVG = SVGinIMG();
alert(hasSVG);
}
這就是我想要的,除了當我在WebKit瀏覽器中運行腳本時,我第一次加載頁面時不會觸發complete屬性; 當我刷新頁面時,它可以正常工作。 返回函數在img完成加載之前運行; 推遲這個的最好方法是什么?
我讓事情變得復雜了; 我真正需要的只是加載事件:
function SVGDetect() {
var testImg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzUiIGhlaWdodD0iMjc1Ij48L3N2Zz4%3D';
var img = document.createElement('img')
img.setAttribute('src',testImg);
img.addEventListener('load',setCSS,true);
}
這在圖像加載時運行另一個功能,這在瀏覽器不支持圖像中的SVG的情況下是絕對不會的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.