JQuery Dialog对话框 不能通过Esc关闭的原因分析及解决办法
背景:想通过Esc键关闭展示中的Dialog对话框,发现有些对话框可以,有些会失效。
原因分析:
1、对话框上可以输入内容的标签元素可以,反之不行。
2、如果鼠标点击对话框后,也可以Esc键关闭。
可以看出对话框上是需要聚焦就可以了。
解决方案:
方案一:
focus:function(){ $("#id").focus(); }
方案二:
延迟聚焦
setTimeout(function() { $("#id").focus(); }, 500);
以上所述是小编给大家介绍的JQuery Dialog对话框 不能通过Esc关闭的原因分析及解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
相关推荐
-
jQuery UI库中dialog对话框功能使用全解析
对话框(dialog),是jQuery UI 非常重要的一个功能.它彻底的代替了JavaScript 的alert().prompt()等方法,也避免了新窗口或页面的繁杂冗余. 一.开启多个dialog 只要设置不同的id 即可实现. $('#x').dialog(); $('#y').dialog(); 二.修改dialog 样式 在弹出的dialog 对话框中,在火狐浏览器中打开Firebug 或者右击->查看 元素.可以看看dialog 的样式,对dialog 的标题背景进行修
-
jQuery弹出框代码封装DialogHelper
看了jQueryUI Dialog的例子,效果还不错,就是用起来有点儿别扭,写出的代码有点拧巴,需要再封装一下!于是就有了下面这个简单的DialogHelper辅助类,因为这篇文章分享的重点是思路,所以目前版本的代码也还非常粗糙.思路对了,后续再封装成什么样都不过是形式而已,希望这个思路能给大家点启迪,同时欢迎大家开拓思维,提出更好的改进意见. 复制代码 代码如下: //require ScrollHelper.js function DialogHelper() { var _this
-
jQuery实现dialog设置focus焦点的方法
本文实例讲述了jQuery实现dialog设置focus焦点的方法.分享给大家供大家参考.具体分析如下: 当弹出对话框,默认我们应该将焦点定位到输入的文本框,但是在dialog.show()之前写上$("#txtGroupName").focus();无法生效. 查看jQuery的官方文档后,发现dialog提供了一个focus的参数,ok,试试先~~ //显示新建项目群组对话框 function showCreateProjectGroupDialog(i) { $("#l
-
修改Jquery Dialog 位置的实现方法
今天在做一个功能的时候使用到了Jquery UI中的dialog组件,因为是一个很简单的组件,有很多功能都没有提供,比如说直接获取到dialog的位置,直接修改dialog的位置都是不行的,并且但可拖动的位置看不见的时候,这个时候就是坑了,关闭不了,也拖动不了,这个时候只能刷新页面来重新初始化界面了. 我今天解决的就是这个问题:解决这种问题有两种方式(个人认为) 1.修改属性让可拖动局域可见,进行拖动 2.不让出现可拖动区域不可见的情况. 针对第一种情况,我没有想到合适的办法.下面给出第二种情况
-
修改jquery中dialog的title属性方法(推荐)
好久都没办法尝试成功 在网上找的经测试也不行 于是在官方文档上看到了 结果终于成功了 $("#overTime").dialog({ autoOpen: false, width: 400, modal: true, title: "Dialog Title", buttons: { "确定": function () { }, "取消": function () { } } }); 在初始化的时候要写title属性(官方文档
-
分享2个jQuery插件--jquery.fileupload与artdialog
这些是我们项目中必不可少的东西,所以今天推荐两个一个叫做artdialog是个iframe的jquery插件,一个叫jquery file upload,我看网上很少有这个插件jquery file upload的插件使用教程,今天我就简单的介绍和写一点使用的方法! 简单用代码举例子 最小化的方法 复制代码 代码如下: data-url是上传后执行上传文件的php方法 <input id="fileupload" type="file" name="
-
jquery弹出框插件jquery.ui.dialog用法分析
本文实例讲述了jquery弹出框插件jquery.ui.dialog用法.分享给大家供大家参考,具体如下: 1. jquery.ui.dialog 官方地址 http://jqueryui.net/dialog/ jquery.ui.dialog是一个非常灵活的模式框,它的官方地址为: http://docs.jquery.com/UI/Dialog 2. 文件引用 要使用jquery.ui.dialog,需要引用两个文件,1个是js,另外1个是css 在contentpage中添加: <scr
-
JQuery Dialog对话框 不能通过Esc关闭的原因分析及解决办法
背景:想通过Esc键关闭展示中的Dialog对话框,发现有些对话框可以,有些会失效. 原因分析: 1.对话框上可以输入内容的标签元素可以,反之不行. 2.如果鼠标点击对话框后,也可以Esc键关闭. 可以看出对话框上是需要聚焦就可以了. 解决方案: 方案一: focus:function(){ $("#id").focus(); } 方案二: 延迟聚焦 setTimeout(function() { $("#id").focus(); }, 500); 以上所述是小编
-
JS和jQuery使用submit方法无法提交表单的原因分析及解决办法
昨天,在做一个表单异步提交内容的时候,遇到很奇怪的问题,submit()方法无法进行提交,每次提交都是把 当前给刷新了,网络抓包发现,每次都是 get方式去获取 当前页面,完全没有post 请求,想着以前 遇上这样的问题 都是因为 表单中 有 name 或者 id 这些命名跟submit 有冲突,但是检查了几次,始终没有发现 名字冲突,所以这个可能性被排除. 平常自己做触发按钮,基本不用a 标签,但是昨天不知道什么 问题,竟然用了 a 而且还给了 href 为空,由于这个a 的class 有多个
-
Jquery Ajax请求文件下载操作失败的原因分析及解决办法
jQuery确实是一个挺好的轻量级的JS框架,能帮助我们快速的开发JS应用,并在一定程度上改变了我们写JavaScript代码的习惯. 废话少说,直接进入正题,我们先来分析一下失败的原因 一.失败的原因 那是因为response原因,一般请求浏览器是会处理服务器输出的response,例如生成png.文件下载等,然而ajax请求只是个"字符型"的请求,即请求的内容是以文本类型存放的.文件的下载是以二进制形式进行的,虽然可以读取到返回的response,但只是读取而已,是无法执行的,说白
-
jQuery Dialog对话框事件用法实例分析
本文实例讲述了jQuery Dialog对话框事件用法.分享给大家供大家参考,具体如下: Dialog对话框事件 对话框应用场景 对话框是最常用.最实用的功能. 1) 静态提示类对话框,对话框的内容是固定的 2) 动态提示类对话框,对话框内容是根据事件源变化的 3) 遮罩类对话框,对话框弹出时背景变灰并且不可选 使用jQuery UI的Dialog 组件可以轻松实现上面三种效果 Dialog组件的主要特点是可以拖动(Draggable),可以改变大小(Resizable). Dialog对话框的
-
基于JQuery的$.ajax方法进行异步请求导致页面闪烁的解决办法
情景 目前有个需求是在文本框填入内容,自动触发keyup事件,下拉列表会自动过滤相应的选项,但是使用了$,ajax后发现,每次触发事件时,都导致整个网页闪烁,触发了全局ajax事件 代码片段 $.ajax({ type: "POST", url: root + "/xxx, data: requestData, dataType: "json", success: function(data){ // 清空列表 $("#formOpinion #
-
jQuery.form.js插件不能解决连接超时(timeout)的原因分析及解决方法
jQuery.form.js是一个form插件,支持ajax表单提交和ajax文件上传. 最近在使用jquery.form.js提交包含文件的表单时,碰到了一个问题:当碰上网速较慢时,而我们又设置了timeout时,例如: var options = { timeout: 3000 //限制请求的时间,当请求大于3秒后,跳出请求 } 我们的页面会死在这里,贴上F12开发者工具返回的结果: 此时,我们并没有处理错误的回调函数,而百度出来的例子中也只有这两个回调函数: beforeSubmit: s
-
jQuery Uploadify 上传插件出现Http Error 302 错误的解决办法
前段时间介绍过jquery uploadify上传插件的使用方法,我在使用中遇到过Http Error 302错误问题,应该会有很多人在使用中遇到过,在此记录下来: 首先http 302是请求被重定向的意思,这就很容易理解了,如果你的uploadify处理上传脚本有session验证,就会出现此错误,因为flash在执行post请求的时候没有包含cookie信息,而服务器的session会根据客户端的cookie来得到SESSIONID.没有提交cookie自然就不能获取到session,然后u
-
Selenium执行完毕未关闭chromedriver/geckodriver进程的解决办法(java版+python版)
selenium操作chrome浏览器需要有ChromeDriver驱动来协助.webdriver中关浏览器关闭有两个方法,一个叫quit,一个叫close. /** * Close the current window, quitting the browser if it's the last window currently open. */ void close(); /** * Quits this driver, closing every associated window. */
-
jquery submit ie6下失效的原因分析及解决方法
ie6中, $('a.btn').click(function(){ form.submit(); }) 点击失效: 分析: 微软低版本浏览器会先执行link标签的自身事件也就是href事件,这样就中断了form的submit事件,"return false;"的意思是中断link标签的的自身事件执行. 解决办法:换思路,用jquery直接处理图片.文字等的click $('a.btn').click(function(){ $('form').get(0).submit(
-
dialog dismiss时键盘不消失的问题浅析及解决办法
当setCanceledOnTouchOutside(true),点击阴影处,dialog dismiss时键盘不消失的问题. 如图 一开始觉得很简单,监听下onDimiss()方法,在里面隐藏键盘不就行了. 但是发现大多数手机都不会隐藏(魅族x4会隐藏). 这是为什么呢?为什么键盘不消失呢? 经过测试,发现edittext.getWindowToken()为null. /** * 关闭键盘 * * @param context * @param et */ public static void
随机推荐
- AngularJS内置指令
- 解决SyntaxHighlighter 代码高亮不换行问题的解决方法
- IIS7传大于30M的视频时出现找不到文件或目录错误正确处理方法
- 自制PHP框架之设计模式
- js+flash实现的5图变换效果广告代码(附演示与demo源码下载)
- 用JavaScript隐藏控件的方法
- js在客户端验证密码强度,兼容FireFox和IE
- PHP获取windows登录用户名的方法
- php获取数组元素中头一个数组元素值的实现方法
- C# null 合并运算符??(双问号)使用示例
- JavaSacript中charCodeAt()方法的使用详解
- ajax技术制作得在线歌词搜索功能
- 谈谈对jquery ui tabs 的理解
- jQuery遍历DOM节点操作之filter()方法详解
- Node.js批量给图片加水印的方法
- 为nginx设置默认虚拟主机(空主机头,默认主机头)
- Ubuntu/Debian 自有软件包构建私有源详解
- 详解Spring极速集成注解redis实录
- ASP.NET MVC4入门教程(二):添加一个控制器
- thinkphp中连接oracle时封装方法无法用的解决办法