在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ img的src屬性不能直接調(diào)用函數(shù)吧?

img的src屬性不能直接調(diào)用函數(shù)吧?

很久以前的一個(gè)老項(xiàng)目,jsp做的,當(dāng)時(shí)因?yàn)榘阉袌D片放到一個(gè)固定的地方存放,所以要求我去寫(xiě)一個(gè)通用方法,所有img標(biāo)簽調(diào)用那個(gè)方法然后去加載圖片。
由于當(dāng)時(shí)我比較菜,在網(wǎng)上找了個(gè)奇葩方法:

<img src="?" onerror="getUrl(this)">

果然解決問(wèn)題了。但是,后來(lái)發(fā)現(xiàn)凡事用了onerror的頁(yè)面,后臺(tái)接口調(diào)用兩次,這事一直擱著,我也很久沒(méi)碰了,后來(lái)發(fā)現(xiàn)老大在我原來(lái)的基礎(chǔ)上改成了這樣,結(jié)果接口只調(diào)用一次了:

<img src="getUrl(this)" onerror="getUrl(this)">

雖然調(diào)兩次接口的問(wèn)題解決了,但是,我從來(lái)都不知道imgsrc可以直接用js函數(shù)的,于是我在本地試了下,根本不行啊,報(bào)錯(cuò)??!
我去看了規(guī)范:https://whatwg-cn.github.io/h... ,規(guī)范上提到src屬性并不能執(zhí)行js腳本,而我現(xiàn)在又沒(méi)有那個(gè)項(xiàng)目最新代碼,也不知道老大為什么這樣寫(xiě)就解決掉兩次接口問(wèn)題,難不成src="getUrl(this)"阻止了src的執(zhí)行,所以src原先需要去掉接口的但是被阻止了???

回答
編輯回答
淺時(shí)光

如果src里不能用函數(shù)的話,會(huì)不會(huì)直接當(dāng)字符串處理了?然后必然報(bào)錯(cuò),就執(zhí)行onerror了。

2017年4月30日 20:08
編輯回答
你的瞳

當(dāng)然不能。會(huì)被當(dāng)作 URL 的。

大概是那個(gè) URL 404 了,所以出錯(cuò),調(diào)用 onerror。

之前調(diào)用兩次的問(wèn)題,你可以把錯(cuò)誤打出來(lái)看看。比如第一次 onerror 處理器時(shí)在設(shè)置 src 時(shí)出了點(diǎn)問(wèn)題。

2018年9月15日 12:49