[英]why the jquery .change event doesn't work as I expect
這是我的問題:
我有一個帶有兩個選項的選擇標簽——“你好”和“世界”
html
<select>
<option> Hello </option>
<option> World </option>
</select>
在 IE 中,當您選擇一個選項並且它成為所選選項時,藍色突出顯示會保持不變,直到您單擊選擇標簽之外的其他位置。 (在 Firefox 中不是這樣)
所以我寫了一個腳本,在選擇了一個選項時從元素中移除焦點。
腳本
$('select').change(function() {
$(this).blur();
但仍然存在一個小問題:如果我選擇你好,然后獲得你好選項 - 焦點將保持不變,藍色突出顯示。 但是,如果我選擇 hello 然后選擇 world 選項 - 一切正常..
我讀到對於選擇菜單,選擇選項時會發生更改事件!!!但是為什么該選項必須與之前選擇的選項不同才能觸發更改事件。 我希望你明白我的英語不太好
這是 js 示例 - 請在 IE TEST JSFIDDLE 示例中對其進行測試
如果您選擇相同的值,該選項並沒有真正改變,是嗎?
如果選項更改,則僅觸發更改事件。
嘗試這個:
$(document).ready(function() {
$('select').mouseout(function(){$(this).blur();})
});
這是一種黑客,可以工作,但不推薦,因為如果用戶試圖用鍵盤填充它,那么它可能會有點麻煩
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.