为什么我的 jQuery UI 对话框完成打开效果后会失去焦点?
我正在使用 jQuery UI 对话框向我的网站添加一些新闻。每次我单击添加新闻
按钮时,都会打开带有文本区域的对话框。实际上,我正在使用 ckeditor 替换 textarea
,但碰巧我不能由于 focus
问题,在文本编辑器中键入(至少我认为这是问题所在)。
一探究竟。正如我单击添加新闻
按钮一样,对话框开始打开并显示其效果。请注意黄色边框的 textarea
意味着它在显示时处于焦点状态(使用 Chrome)。 单击缩放
请注意,当对话框完成显示时,它不再聚焦,我 遇到了麻烦
因为这个 点击缩放
另外,检查我的代码http://jsfiddle.net/pzHr2/
I'm using jQuery UI Dialog for adding some news to my site. Every time I click add news
button, the dialog should open with the text area. Actually, I'm using ckeditor replacing the textarea
and it happens that I can't type inside the text editor due to focus
issue (at least I think this is the problem).
Check it out. As just as I click add news
button the dialog start to open with its effect. Notice the yellow bordered textarea
meaning that it's focused (using Chrome) while it's appearing.
Click to zoom
Notice then that when the dialog finishes appearing, it isn't focused anymore and I'm having trouble because of this
Also, check my code http://jsfiddle.net/pzHr2/
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这不是一个有据可查的(非常轻描淡写)功能,您可以像传递对象一样传递对象
.show()
UI 方法 在您的选项中如下所示:这将运行
.focus()
当动画完成时,您可以在这里尝试一下。如果您好奇为什么会这样,你可以在这里看看。注意:这个答案适用于jQuery UI 1.8.4+(因为您使用的是
.button()
),它不会工作对于 1.7.x 用户。It's not a very well documented (tremendous understatement) feature that you can pass an object just as you can to the
.show()
UI method like this in your options:This runs the
.focus()
when the animation completes, you can give it a try here. If you're curious as to why this works, you can take a look here.Note: this answer is for jQuery UI 1.8.4+ (since you're using
.button()
), it won't work for 1.7.x users.