當(dāng)jQuery1.7遇上focus方法的問題
jQuery中有一個(gè)focus()方法能設(shè)置對(duì)象的焦點(diǎn),在1.7以下的版本中,不管對(duì)象是不是disabed狀態(tài),這個(gè)方法都不會(huì)報(bào)錯(cuò)(只是當(dāng)disabled時(shí),設(shè)置焦點(diǎn)的代碼無效),但在1.7版本中,如果對(duì)象是disabled狀態(tài),這時(shí)調(diào)用focus()方法時(shí),會(huì)直接報(bào)異常:
Error: Can't move focus to the control because it is invisible, not enabled, or of a type that does not accept the focus.
意思是:不可見或不可用的元素?zé)o法獲取焦點(diǎn)。(特別提一下:IE9很NB,能自動(dòng)識(shí)別這種情況,在IE9下不會(huì)報(bào)錯(cuò),但是IE9以下的版本全掛。)
<!doctype html>
<html>
<head>
<title>測(cè)試</title>
<script src="jquery-1.7.min.js" type="text/javascript"></script>
<!--<script src="jquery-1.4.4.min.js" type="text/javascript"></script>-->
<script type="text/javascript">
function fnTest(){
//try{
$("#txt").focus();
//}catch(e){}
}
</script>
</head>
<body>
<div>
<input type="text" disabled="disabled" id="txt"/>
<input type="text" id="txt2"/>
<input type="button" value="Test" onclick="fnTest()"/>
</div>
</body>
</html>
雖然只是一個(gè)小變化,但是卻很容易造成大杯具,特別是你的js代碼,在focus()之后,還有其它很多事情要做時(shí):)
建議:
如果一定要用最高版本的jQuery,最省事的辦法莫過于在寫xxx.focus()時(shí),加一個(gè)try/catch,變成try{xxx.focus();}catch(e){}
- jQuery focus和blur事件的應(yīng)用詳解
- jquery中focus()函數(shù)實(shí)現(xiàn)當(dāng)對(duì)象獲得焦點(diǎn)后自動(dòng)把光標(biāo)移到內(nèi)容最后
- JQuery之focus函數(shù)使用介紹
- jquery focus(fn),blur(fn)方法實(shí)例代碼
- 使用jquery給input和textarea設(shè)定ie中的focus
- jQuery中click事件用法實(shí)例
- jQuery中click事件的定義和用法
- JQuery中使用on方法綁定hover事件實(shí)例
- jQuery事件綁定和委托實(shí)例
- jQuery中focus事件用法實(shí)例
相關(guān)文章
jQuery中each和js中forEach的區(qū)別分析
這篇文章主要介紹了jQuery中each和js中forEach的區(qū)別,結(jié)合實(shí)例形式較為詳細(xì)的分析了jQuery中each和js中forEach針對(duì)數(shù)組與對(duì)象遍歷的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2019-02-02
一個(gè)背景云變換js特效 鼠標(biāo)移動(dòng)背景云變化
分享一個(gè)背景云變換js特效隨著鼠標(biāo)的移動(dòng),背景云會(huì)不斷的變化位置和形狀,感興趣的朋友可以研究下2012-12-12
基于jquery實(shí)現(xiàn)表格內(nèi)容篩選功能實(shí)例解析
對(duì)于表格來說,當(dāng)數(shù)據(jù)比較多的時(shí)候,我們無法一頁一頁的查找,這樣我們就可以進(jìn)行篩選操作,這篇文章主要為大家詳細(xì)介紹了基于jquery實(shí)現(xiàn)表格內(nèi)容篩選功能的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05
JQuery樣式操作、click事件以及索引值-選項(xiàng)卡應(yīng)用示例
這篇文章主要介紹了JQuery樣式操作、click事件以及索引值-選項(xiàng)卡應(yīng)用,結(jié)合實(shí)例形式分析了jQuery動(dòng)態(tài)修改css樣式、事件響應(yīng)以及選項(xiàng)卡相關(guān)操作技巧,需要的朋友可以參考下2019-05-05
jQuery插件Tooltipster實(shí)現(xiàn)漂亮的工具提示
Tooltipster是一個(gè)jQuery插件用于快速創(chuàng)建HTML5校驗(yàn)并且靈活的Tooltips。它可以通過CSS來改變外觀,箭頭的位置之后,鼠標(biāo),延遲/期間的外觀都可以被定義。2015-04-04
讓人印象深刻的10個(gè)jQuery手風(fēng)琴效果應(yīng)用
jQuery 是最流行的 JavaScript 開發(fā)框架,它簡(jiǎn)化了 HTML 文檔遍歷,事件處理,動(dòng)畫以及 Ajax 交互,幫助 Web 開發(fā)人員更快速的實(shí)現(xiàn)各種精美的界面效果2012-05-05
全面解析jQuery $(document).ready()和JavaScript onload事件
這篇文章主要介紹了全面解析jQuery $(document).ready()和JavaScript onload事件的相關(guān)資料,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
jQuery+jRange實(shí)現(xiàn)滑動(dòng)選取數(shù)值范圍特效
本文向大家介紹一款范圍選擇器插件jRange,它是基于jQuery的一款簡(jiǎn)單插件。本站之前有類似文章:jQuery+CSS使用滑塊選取價(jià)格范圍,其中不太好的地方是使用了jqueryui龐大的插件庫,有興趣的朋友可以看看。下面我們來看下插件jRange的使用。2015-03-03
jQuery插件Echarts實(shí)現(xiàn)的雙軸圖效果示例【附demo源碼下載】
這篇文章主要介紹了jQuery插件Echarts實(shí)現(xiàn)的雙軸圖效果,結(jié)合完整實(shí)例形式分析了Echarts插件制作雙軸圖效果的操作步驟與相關(guān)實(shí)現(xiàn)技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2017-03-03
jquery處理json數(shù)據(jù)實(shí)例分析
json數(shù)據(jù)是一種經(jīng)型的實(shí)時(shí)數(shù)據(jù)交互的數(shù)據(jù)存儲(chǔ)方法,使用到最多的應(yīng)該是ajax與json配合使用了,下面我來給大家介紹jquery處理json數(shù)據(jù)方法。2014-06-06

