jquery 插件 thickbox窗口 第一个控件获得焦点
来源:互联网 发布:淘宝全屏轮播怎么做 编辑:程序博客网 时间:2024/04/28 11:05
为了方便用户的输入,我们一般默认页面载入后焦点设置在第一个输入的控件上,使用thickbox,弹出后的窗口怎么设置焦点呢?
原来是想说在新的页面上直接设置:$("#id").focus();的,但发现,这个在页面截入前就执行了,查找了一下http://codylindley.com/thickboxforum
的论坛,发现这种情况有两种方法可以解决:
1,还是老方法,只是延迟了时间执行焦点的获取:
setTimeout("$('#username').focus();",100);
2,比较完美的方法,但得修改thickbox.js文件.
在原thickbox.js 文件中从219到239行内的三个判断语句中的:$("#TB_window").css({display:"block"});后增加一句:
$('#TB_window .grabfocus:first').focus();//新增加的第一个获得焦点
接下来在页面中需要获得焦点的控件的class 加上:grabfocus 这个类.就可以了..
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/riyao/archive/2008/08/22/2812594.aspx
Thickbox Login should have focus
最近專案剛好有個需求,要在彈跳視窗開啟後使用者可以藉由上下鍵或空白鍵去控制開啟後視窗的scrollbar藉以瀏覽頁面。
彈跳視窗是使用ThickBox來實作,但ThickBox開啟後focus是直接在ThickBox上,而不是 ThickBox 裡的iframe。
研究了一下ThickBox的source code,發現ThickBox會呼叫函式tb_showIframe()來載入iframe。
所以可以在tb_showIframe()裡加入
$("#TB_iframeContent").focus();
$("#TB_iframeContent").contents().find("body").focus();
這樣ThickBox 開啟時focus馬上就可以落在iframe內的物件了。
經測試,$("#TB_iframeContent").focus();必須加入tb_showIframe(),在Firefox(v 3.6.3)及Chrome(v 5.0.375.55)才可正常執行;若不加$("#TB_iframeContent").focus();僅可在IE(v 8)正常執行註。
備註
以上提及的瀏覽器版本皆為小弟所使用的瀏覽器版本
- jquery 插件 thickbox窗口 第一个控件获得焦点
- jquery 插件 thickbox窗口 第一个控件获得焦点
- jquery 插件 thickbox窗口 第一个控件获得焦点(解决第二次弹出窗口,文本不能输入数据)
- 页面第一个控件获得焦点(js实现)
- jquery 获得焦点与失去焦点插件
- jquery插件thickbox
- jQuery插件ThickBox
- input失去焦点和获得焦点jquery焦点事件插件
- extjs表单第一个textfield获得焦点
- extjs表单第一个textfield获得焦点
- listView 第一个item获得焦点
- 第一个jquery插件
- Jquery插件Thickbox的使用
- YII中改变自定义操作的方式并使用thickbox的JQuery插件窗出窗口
- 第一个jquery插件(jquery插件)
- 重载此警告窗口,使某控件获得焦点
- jquery thickbox 插件自定义 潇湘博客
- jquery插件thickbox遮罩层的的使用
- 正则表达式学习小结
- JSON学习
- oracle正则表达式regexp_like用法
- JAVA与模式-接口和抽象类
- ibatis 开发指南
- jquery 插件 thickbox窗口 第一个控件获得焦点
- 对Web设计和开发人员有用的15个Chrome插件
- linux 驱动mmap操作
- GlobalNamingResources组件
- 环形缓冲区
- 键盘虚拟键值编码表 使用keybd_Event
- Redhat Enterprise Linux Server 5.4搭建SVN服务器
- Android 实现Activity后台运行
- os 协作command