我正在從一個API請求數據的項目。假設我在一個HTTP請求中獲取演員數據列表(包含圖片URL)。一些演員的圖片網址已損壞,無法使用。這種情況使我的項目有點混亂。如何忽略部分JSON數據,如果其圖像URL中斷
有什麼辦法可以跳過那些圖像不可用的演員,並訪問其圖像可用的所有其他演員的數據?
代碼示例將不勝感激
我正在從一個API請求數據的項目。假設我在一個HTTP請求中獲取演員數據列表(包含圖片URL)。一些演員的圖片網址已損壞,無法使用。這種情況使我的項目有點混亂。如何忽略部分JSON數據,如果其圖像URL中斷
有什麼辦法可以跳過那些圖像不可用的演員,並訪問其圖像可用的所有其他演員的數據?
代碼示例將不勝感激
有2個解決方案爲您的問題。
一旦演員的圖片URL被破壞,請使用默認圖片作爲其src
。代碼如下:<img src="actorX.jpg" onerror="this.src='defaultActor.jpg'">
。
一旦演員的圖片網址被破壞,隱藏整個演員內容。代碼如下:<img onerror="window.hideErrorActor(this)" src="actorX.jpg">
。例如製作一個jsfiddle。如果您需要,請檢查它。
這些2個解決方案的關鍵是img
元件的onerror
事件處理程序。當圖片加載失敗時(例如網址中斷),img
元素將觸發error
事件,並且註冊到onerror
屬性的功能將會運行。在功能裏面,你可以做任何你想做的事情。
這工作正常。當我在angularJS中使用ng-repeat來處理來自JSON數據的圖像URL時,如何實現它? – 9094US
如果你在AngularJS中使用'ng-repeat'來渲染演員的內容,你可以給每個演員塊一個'id'(無論是來自JSON數據還是來自'$ index'),並且當' onerror'發生。 – shaochuancs
@ 9094US是你的問題解決了嗎?如果是的話,也許你可以「接受」這個答案? – shaochuancs
是'獲得演員列表一個http請求或多個http請求?演員響應數據是否包含他/她的圖片網址,並且您使用此網址來獲取圖片? 「通過訪問所有這些特定請求」是什麼意思? – shaochuancs
是的。這是一個單一的http獲取響應,其中演員的姓名和圖片URL採用JSON格式。是的,我使用URL來獲取圖像。通過訪問所有這些特定請求,我的意思是,特定演員名稱的JSON數據的圖像URL不會在JSON演員詳細信息數組列表中破壞。 – 9094US