2014-04-08 65 views
1

IE10和其他瀏覽器在標籤中具有禁用屬性是有區別的。IE10中img標籤的禁用屬性

<!DOCTYPE html> 
<html> 
<head> 
    <title> Img Tag </title> 
</head> 
<body> 
    <script type="text/javascript"> 
     function abc() { 
      alert("Hi"); 
     } 
    </script> 
    <img style="width: 50px; height: 50px;" onload="abc()" onclick="abc()" src="./testimg.png" disabled /> 
</body> 
</html> 

IE10是尊重殘疾人財產和雙方的onload &的onclick不點火。如果我刪除禁用的屬性,它會觸發這兩個事件。

但是,Chrome不尊重殘疾人財產。我的意思是,它正在發射這兩個事件,而不管殘疾屬性。

我的問題是, 我可以在標籤中使用禁用的屬性嗎? 如果是,IE10或Chrome的正確行爲是什麼?這是一個在車庫中的錯誤?

+0

'disabled'只適用於表單元素。 – Vucko

+0

Vucko請檢查此鏈接:http://www.java2s.com/Code/JavaScriptReference/Javascript-Properties/disabledisappliedto.htm –

+0

@Mohammed Imran Khan:這是針對JavaScript屬性,而不是HTML屬性。 – BoltClock

回答

1

沒有規範或公開草稿允許disableda元素。所以Chrome是正確的,IE是錯誤的。有趣的是,a element on IE的文檔沒有提及disabled屬性(只有isDisabled屬性)。

參考How to disable HTML links

0

在HTML 5規範:

非標準屬性正確的行爲是添加他們到DOM,否則忽略它們。因此,Chrome具有正確的行爲。


圖像不是交互式控件,因此將點擊事件綁定到它們通常是一個壞主意。

改爲使用按鈕元素。您可以在其中放置一個圖像並對該按鈕進行設計,使其看起來像一幅普通的圖像。您可以禁用該按鈕並將點擊事件綁定到該按鈕。

+0

圖像不是互動控件似乎幾乎是你的品味聲明不是事實。將處理程序綁定到img元素的onclick事件的缺點是什麼? –