最近作项目时,使用了jqueryUI dialog功能,当打开弹出框时,若是弹出框内容里面存在input,那么弹出框会自动得到第一个文本框焦点。javascript
有时候,弹出框会有日期控件,通常日期控件采用focus触发事件,结合上述说的弹出框触发了日期的focus事件,形成弹出框和日期同时打开。这种用户体验效果很是差。java
在网上看了不少解决方法的demo,使用事后都不能解决问题。仔细看了jqueryUI源代码,找到了最根本的解决办法。jquery
hasFocus.eq( 0 ).focus();//设置弹出框中第一个文本框自动得到焦点
这是最关键的,源码里面设置第一个文本框自动得到焦点。直接干掉这句,问题就解决了。blog