[英]How does a missing src attribute in an img tag behave across browsers?
我有一個頁面,其中包含許多隱藏在一系列披露內的圖像。 單擊該部分的標題時,將顯示圖像(以及其他內容)。 到現在為止還挺好。 但是,有很多這些圖像,導致荒謬的加載時間,所以我只想在需要顯示時加載它們。 當我打開該部分時,我檢查圖像的src
是否已設置,如果不是,我設置它並加載圖像。 但是,我發現,如果我省略了我的<img>
的src
屬性,Javascript(在Chrome中)認為它是=== ''
。 它與空字符串相同! 我本來以為它是undefined
。
這很不錯,但似乎有點太好了。 當img
是沒有src
的<img>
標簽時,不同瀏覽器如何評估img.src
? 如果我檢查img.src === ''
,這在其他瀏覽器上是否安全?
您可以像這樣檢查:
if (!img.src) {
// need to set the .src property here
}
由於這會檢查任何falsey值,無論瀏覽器是返回null
, undefined
還是""
,這都將覆蓋您。
僅供參考,我在Firefox,Chrome和IE中嘗試了這個jsFiddle ,他們都返回了.src
屬性的空字符串,但如果某些瀏覽器的某些舊版本略有不同,則檢查上述任何虛假值將使您的代碼更容易被允許理念。
對於所有現代瀏覽器,沒有SRC
的圖像是完整的。 但是,根據IE,沒有SRC
的圖像不完整 - is not loaded
。 您可以使用getAttribute()來檢查src
屬性是否存在。 喜歡:
if( !img.getAttribute('src') ) {
//the img does not have src attribute
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.