我正在製作一個搜索工具,公司的所有員工都可以找到他們的名字。這些值是使用json檢索的。 (這包括了員工圖片的鏈接)。如何使用默認的網址替換損壞的網址不存在
我的問題。有時鏈接不存在(由於自動生成而導致來自其他系統的錯誤輸入)。如果多數民衆贊成,所以我想用默認的圖像替換圖像。我如何檢查圖像鏈接是否不存在/錯誤?
for (i = 0; i < totalResultsToShow; i++) {
//when the photoURL isn't given
if (searchResults[i].photoURL == "") {
searchResults[i].photoURL = imagesURL + "silhouette.jpg";
}
//when the photoURL doesn't exists
//do something??
HTMLContent += "<div class=resultTableRow id=" + i + " onclick=resultClicked(" + i + ");>";
HTMLContent += "<div class=resultTableItemImage><img width ='" + resultsImageWidth + "' src='" + searchResults[i].photoURL + "' class=stretchWidth /></div>";
HTMLContent += "<div class=resultTableItemUser><p>" + searchResults[i].user + "</p></div>"
HTMLContent += "<div class=resultTableItemUsername><p>" + searchResults[i].username + "</p></div>"
HTMLContent += "</div>"; "</div>";
}
//put results on screen
我認爲1解決方案是把圖像的代碼放在try/catch塊中。但我個人不喜歡try/catch塊。
[編輯1] 我同意你關於存在和未定義的檢查。結果數組中只有鏈接存在。但它是一個腐敗的聯繫。在將它們添加到Javascript中的html之前,有沒有什麼辦法檢查鏈接?
[EDIT 2] 誤差即時得到是:GET HTTP:// ... /---.jpg 404(未找到)
[溶液]注意到的onerror =此。 SRC = ' 「+ imagesURL +」/ silhouette.jpg'
HTMLContent += "<div class=resultTableItemImage><img width ='" + resultsImageWidth + "' src='" + searchResults[i].photoURL + "' class=stretchWidth onerror=this.src='"+imagesURL+"/silhouette.jpg' /></div>";
日Thnx
我覺得這回答了你的問題: http://stackoverflow.com/questions/ 9022427/img-see-if-src- – Lian
確實如此。是否有可能在onerror中直接更正img src? – Marcel