国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

中文輸入法不觸發(fā)onkeyup事件的解決辦法

2024-05-06 16:09:09
字體:
供稿:網(wǎng)友
這篇文章主要介紹了中文輸入法不觸發(fā)onkeyup事件的解決辦法,需要的朋友可以參考下

這兩天做一個需要實時監(jiān)控文本框輸入的功能,碰到了中文輸入法無法觸發(fā)onkeyup事件的惡心問題。

具體表現(xiàn)是這樣的:

當監(jiān)聽一個input的keyup的事件的時候,英文輸入法的情況下可以實時的通過keyup事件檢測到文本框value的變化,但是當輸入法變成中文后,input的keyup事件就不會被正常觸發(fā)。這是最先前的寫法。

<html><head><script type="text/javascript" src="http://www.survivalescaperooms.com/static/js/jquery-1.4.2.min.js"></script></head><body> <p>使用keyup事件檢測文本框內(nèi)容: </p> <p><input type="text" autocomplete="off"/><span></span><script type="text/javascript">$('#keyup_i').bind('keyup', function(){$('#keyup_s').text($(this).val());})</script> </p></body></html>

如你所見,這樣的寫法遇到了中文不能觸發(fā)keyup事件的問題。于是尋求解決方法,想起來baidu的搜索欄提示似乎是沒有這個問題的,于是開始看百度的js。百度的js比較難看...方法命名凈是一個字母,最后發(fā)現(xiàn)大概是使用了timeout做一個定時器來定時監(jiān)測input框的修改。不是很滿意這樣的方法。于是繼續(xù)查找看有沒有更好的解決辦法,于是就找到了oninput和onpropertychange兩個事件。

oninput是firefox下面可用,而onpropertychange則是ie下可用。兩個方法有著一些區(qū)別。

oninput只能檢測到value這個屬性的變化,而onpropertychange則可以檢測到包含value的所有屬性的變化。于是開始改成這個樣子。

<html><head><script type="text/javascript" src="http://www.survivalescaperooms.com/static/js/jquery-1.4.2.min.js"></script></head><body> <p>使用oninput以及onpropertychange事件檢測文本框內(nèi)容: </p> <p><input type="text" autocomplete="off"/><span></span><script type="text/javascript">//先判斷瀏覽器是不是萬惡的IE,沒辦法,寫的東西也有IE使用者var bind_name = 'input';if (navigator.userAgent.indexOf("MSIE") != -1){bind_name = 'propertychange';}$('#inputorp_i').bind(bind_name, function(){$('#inputorp_s').text($(this).val());})</script> </p></body></html>

問題這么被解決了。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 化德县| 平和县| 井陉县| 根河市| 花莲市| 合阳县| 金堂县| 府谷县| 右玉县| 忻州市| 苏尼特右旗| 古浪县| 新蔡县| 扶余县| 曲沃县| 阳新县| 天全县| 大余县| 古蔺县| 延边| 沭阳县| 宜川县| 高雄市| 赤峰市| 定襄县| 平凉市| 聂荣县| 台山市| 惠水县| 赫章县| 德州市| 宜黄县| 宣恩县| 溧阳市| 铜川市| 翼城县| 哈巴河县| 柏乡县| 潢川县| 大英县| 全椒县|