jQuery EasyUI Dialog拖不下来如何解决


Posted in Javascript onSeptember 28, 2015

使用jquery easyui可以很容易的创建很炫的前台页面,最近在使用过程中发现dialog存在一个问题:

 用户将dialog拖出页面后,dialog就不能拖下来了,除非要重新打开页面,这个问题对于用户体验来说是非常重要的,

所以就开始研究easyu API看看有没有相应的函数或者事件去处理,结果发现没有现成,只好自己想了个办法:

思路如下:

          使用panel的onOpen事件,取得diglog的原始left和top

          当用户在拖动dialog过程中,使用panel的onMove事件取得dialog所在父页面body的width和height,

通过计算,当用户将diglog拖动出body时,使用panel的move函数将dialog移动到初始的位置。

经过测试次方法可行,代码如下所示:

var default_left;
var default_top;
$('#details_dd').dialog({
  title:'详细信息',
  modal: true,
  onOpen:function(){ 
  //dialog原始left
  default_left=$('#details_dd').panel('options').left; 
     //dialog原始top
   default_top=$('#details_dd').panel('options').top;     
},
  onMove:function(left,top){ //鼠标拖动时事件
   var body_width=document.body.offsetWidth;//body的宽度
   var body_height=document.body.offsetHeight;//body的高度
   var dd_width= $('#details_dd').panel('options').width;//dialog的宽度
   var dd_height= $('#details_dd').panel('options').height;//dialog的高度    
   if(left<1||left>(body_width-dd_width)||top<1||top>(body_height-dd_height)){
      $('#details_dd').dialog('move',{  
   left:default_left,  
   top:default_top  
   }); 
    }
}
});

有些问题就需要大家一起讨论研究才会有所收获,本文分享的jQuery EasyUI Dialog拖不下来的解决办法,希望可以对大家的学习有所帮助,帮助大家顺利解决jQuery EasyUI Dialog拖不下来的问题。

Javascript 相关文章推荐
根据配置文件加载js依赖模块
Dec 29 Javascript
JavaScript不使用prototype和new实现继承机制
Dec 29 Javascript
jQuery中trigger()与bind()用法分析
Dec 18 Javascript
jQuery版本升级踩坑大全
Jan 12 Javascript
JavaScript SweetAlert插件实现超酷消息警告框
Jan 28 Javascript
Javascript将字符串日期格式化为yyyy-mm-dd的方法
Oct 27 Javascript
Angular2学习笔记——详解NgModule模块
Dec 02 Javascript
Javascript基础回顾之(三) js面向对象
Jan 31 Javascript
数组Array的一些方法(总结)
Feb 17 Javascript
vue中使用element-ui进行表单验证的实例代码
Jun 22 Javascript
用图片替换checkbox原始样式并实现同样的功能
Nov 15 Javascript
vue+Element-ui实现分页效果
Nov 15 Javascript
JQuery实现左右滚动菜单特效
Sep 28 #Javascript
JS动态日期时间的获取方法
Sep 28 #Javascript
js电话号码验证方法
Sep 28 #Javascript
JavaScript多图片上传案例
Sep 28 #Javascript
JavaScript判断FileUpload控件上传文件类型
Sep 28 #Javascript
JS实现的仿东京商城菜单、仿Win右键菜单及仿淘宝TAB特效合集
Sep 28 #Javascript
JS实现淘宝支付宝网站的控制台菜单效果
Sep 28 #Javascript
You might like
千呼万唤始出来,DOTA2勇士令状不朽宝藏Ⅱ现已推出
2020/08/25 DOTA
PHP 加密解密内部算法
2010/04/22 PHP
PHP中的cookie不用刷新就生效的方法
2012/02/04 PHP
分享一个漂亮的php验证码类
2016/09/29 PHP
基于jQuery的日期选择控件
2009/10/27 Javascript
jQuery下通过$.browser来判断浏览器.
2011/04/05 Javascript
jQuery+slidereveal实现的面板滑动侧边展出效果
2015/03/14 Javascript
解决WordPress使用CDN后博文无法评论的错误
2015/12/15 Javascript
jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
2020/04/16 Javascript
Javascript中数组去重与拍平的方法示例
2017/02/03 Javascript
[原创]SyntaxHighlighter自动识别并加载脚本语言
2017/02/07 Javascript
微信小程序 wx.request方法的异步封装实例详解
2017/05/18 Javascript
nginx+vue.js实现前后端分离的示例代码
2018/02/12 Javascript
关于vue面试题汇总
2018/03/20 Javascript
jquery3和layui冲突导致使用layui.layer.full弹出全屏iframe窗口时高度152px问题
2019/05/12 jQuery
JS关闭子窗口并且刷新上一个窗口的实现示例
2020/03/10 Javascript
[40:57]TI4 循环赛第二日 iG vs EG
2014/07/11 DOTA
Python中几种操作字符串的方法的介绍
2015/04/09 Python
解决Python 遍历字典时删除元素报异常的问题
2016/09/11 Python
详解pyenv下使用python matplotlib模块的问题解决
2018/11/29 Python
Django保护敏感信息的方法示例
2019/05/09 Python
基于python的socket实现单机五子棋到双人对战
2020/03/24 Python
Windows10下Tensorflow2.0 安装及环境配置教程(图文)
2019/11/21 Python
浅谈keras中的keras.utils.to_categorical用法
2020/07/02 Python
基于Python模拟浏览器发送http请求
2020/11/06 Python
HTML5梦幻之旅——炫丽的流星雨效果实现过程
2013/08/06 HTML / CSS
英国最大的宠物食品和宠物用品网上零售商: Zooplus
2016/08/01 全球购物
新加坡最受追捧的体验平台:Hapz
2018/01/01 全球购物
英国时尚和家居用品零售商:Matalan
2021/02/28 全球购物
英语演讲稿3分钟
2014/04/29 职场文书
政治学求职信
2014/06/03 职场文书
教师先进个人材料
2014/12/17 职场文书
2015年高考寄语或鼓励的话
2015/03/23 职场文书
导游词之清晏园
2019/11/22 职场文书
Java设计模式中的命令模式
2022/04/28 Java/Android
MySQL的prepare使用以及遇到的bug
2022/05/11 MySQL