-4
我看到一些像這樣的代碼:事件是針對對象還是字符串?
var targetElement = event.target || event.srcElement;
if((targetElement == "IMG")
{
...
}
我一直以爲event.target是一個對象,我們應該使用event.target.tagName,但怎麼來event.target是一個字符串嗎?
我看到一些像這樣的代碼:事件是針對對象還是字符串?
var targetElement = event.target || event.srcElement;
if((targetElement == "IMG")
{
...
}
我一直以爲event.target是一個對象,我們應該使用event.target.tagName,但怎麼來event.target是一個字符串嗎?
這是一個對象,當然。您可以使用==
並將其與字符串進行寬鬆比較,但是有什麼意義?
如果你想檢查的類型,使用
event.target.tagName.toUpperCase() === "IMG"
toUpperCase
如果文檔可能在XHTML是必要的。
什麼讓你認爲它是一個字符串,基於什麼看起來像無效的代碼 –
你在測試的瀏覽器中看到什麼樣的值? [Mozilla文檔](https://developer.mozilla.org/en-US/docs/Web/API/Event/target)似乎表明這應該始終是一個對象。如果'target'沒有設置,可能是因爲你使用的是20世紀的瀏覽器,那麼['srcElement'](https://msdn.microsoft.com/en-us/library/ff974945%28v=vs .85%29.aspx?f = 255&MSPPError = -2147217396)也應該是一個對象。我認爲這個代碼是錯誤的。 – tadman