EventTarget事件:input

2019-01-22 15:24 更新

EventTarget事件 - input

當<input>,<select>或<textarea>元素的值被更改時,DOM input事件將同步觸發(fā)。該事件也適用于啟用了contenteditable的元素,以及啟用designMode時的任何元素。

在contenteditable和designMode的情況下,事件目標是編輯主機。如果這些屬性適用于多個元素,則編輯主機是最近的祖先元素,其父元素不可編輯。

對于type = checkbox或type = radio的<input>元素,只要用戶根據(jù)HTML5規(guī)范切換控件,就會觸發(fā)input事件。然而,從以往的使用結(jié)果來看,并非總是如此。檢查兼容性,或者使用change事件代替這些類型的元素。

注意:與input不同,對于元素值的每次更改,都不一定會觸發(fā)change事件。

基本信息

接口InputEvent
同步/異步同步
冒泡
是否可取消沒有
是否可組成
目標Element
默認操作沒有

屬性

屬性類型描述
target(只讀)EventTarget事件目標(DOM樹中最頂層的目標)。
type(只讀)DOMString事件的類型。
bubbles(只讀)Boolean事件是否正常冒泡。
cancelable(只讀)Boolean事件是否可以取消。

規(guī)范

  • HTML5
  • DOM Level 3事件

瀏覽器兼容性

我們將兼容性數(shù)據(jù)轉(zhuǎn)換為機器可讀的JSON格式。

  • 電腦端

Chrome
Edge
Firefox(Gecko)Internet Explorer
Opera
Safari
基本支持支持支持
支持[1]支持:9 [2] [3]支持[4]支持
compositionupdate之后支持
支持
支持:12支持
支持:15支持
contenteditable元素上支持
支持
支持:14不支持支持:15支持
designMode"on"支持
?支持:14不支持支持:15支持
data支持
不支持?支持
isComposing支持
?支持:31不支持不支持不支持
<select>元素上支持
不支持支持:49不支持?
在類型checkbox<input>元素上支持
支持:49不支持支持不支持
在類型radio<input>元素上支持
?支持:49不支持支持不支持
  • 移動端

AndroidChrome for AndroidEdgeFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
基本支持支持支持
支持
支持
??支持
compositionupdate之后
??支持
支持:12.0 ???
contenteditable元素上
?(Yes)?支持:14.0??支持
designMode"on"
???支持:14.0 ???
data???No support???
isComposing不支持不支持?支持:31.0不支持不支持不支持
<select>元素上
?支持
?不支持???
在類型checkbox<input>元素上
???????
在類型radio<input>元素上
???????

注釋:

[1]在Gecko 12.0(Firefox 12.0 / Thunderbird 12.0 / SeaMonkey 2.9)之前,Gecko在使用IME進行合成或在macOS X上使用死鍵時沒有發(fā)生input事件。

[2] 當用戶從輸入中刪除字符時(例如,通過按Backspace或Delete,或使用“剪切”操作),IE 9不會觸發(fā)input事件。

[3] IE 10和IE 11有一個錯誤,input事件觸發(fā)占位符屬性更改。

[4]在Opera 15之前,Opera 在輸入字段中刪除文本后沒有觸發(fā)input事件。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號