jquery实现可拖拽弹出层特效


Posted in Javascript onJanuary 04, 2015

功能很简单,却非常的实用,代码更加的简洁,这里就不多废话了

奉上源码:

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title></title>

<style type="text/css">

*

{

margin: 0px;

padding: 0px;

}

.dragBox

{

width: 400px;

height: 200px;

position: absolute;

top: 40%;

left: 40%;

background: #e8e8e8;

z-index: 8001;

}

.dragBox > div

{

height: 30px;

cursor: move;

background: #00ff21;

position: relative;

}
.ui-mask

{

width: 100%;

height: 100%;

background: #000;

position: absolute;

top: 0px;

z-index: 8000;

opacity: 0.4;

filter: Alpha(opacity=40);

}

</style>

<script src="framework/base/jquery-1.8.3.min.js"></script>

<script type="text/javascript"></script>

<script type="text/javascript">

$(function () {

var mouseOffx = 0;

var mouseOffy = 0;

var isDrag = false;

$(".dragBox div:eq(0)").unbind(".click").on("mousedown", function (ev) {

mouseOffx = ev.clientX - $(".dragBox div:eq(0)").offset().left;

mouseOffy = ev.clientY - $(".dragBox div:eq(0)").offset().top;

isDrag = true;

})

$(document).unbind(".click").on("mousemove", function (ev) {

var mourseX = ev.clientX, mourseY = ev.clientY;

var moveX = 0, moveY = 0;

if (isDrag === true) {

moveX = mourseX - mouseOffx;

moveY = mourseY - mouseOffy;

var maxX = $(window).outerWidth(false) - $(".dragBox").outerWidth(false);

var maxY = $(window).outerHeight(false) - $(".dragBox").outerHeight(false);

moveX = Math.min(maxX, Math.max(0, moveX));

moveY = Math.min(maxY, Math.max(0, moveY));

$(".dragBox").css({ "left": moveX, "top": moveY });

}

});

$(document).unbind(".click").on("mouseup", function () {

isDrag = false;

});

});

</script>

</head>

<body>

test 

<div class="ui-mask" id="mask" onselectstart="return false"></div>

<div class="dragBox">

<div>

</div>

</div>

</body>

</html>
Javascript 相关文章推荐
可输入的下拉框
Jun 19 Javascript
js同时按下两个方向键
Dec 01 Javascript
JavaScript入门教程(2) JS基础知识
Jan 31 Javascript
使用jQuery中的when实现多个AJAX请求对应单个回调的例子分享
Apr 23 Javascript
JSON.parse()和JSON.stringify()使用介绍
Jun 20 Javascript
jquery仿百度经验滑动切换浏览效果
Apr 14 Javascript
javascript弹性运动效果简单实现方法
Jan 08 Javascript
javascript数组对象常用api函数小结(连接,插入,删除,反转,排序等)
Sep 20 Javascript
详解nvm管理多版本node踩坑
Jul 26 Javascript
vue中 this.$set的用法详解
Sep 06 Javascript
layer.alert回调函数执行关闭弹窗的实例
Sep 11 Javascript
40行代码把Vue3的响应式集成进React做状态管理
May 20 Javascript
jQuery中:image选择器用法实例
Jan 03 #Javascript
jQuery中:submit选择器用法实例
Jan 03 #Javascript
jQuery中:checkbox选择器用法实例
Jan 03 #Javascript
jQuery中:radio选择器用法实例
Jan 03 #Javascript
jQuery中:password选择器用法实例
Jan 03 #Javascript
jQuery中:text选择器用法实例
Jan 03 #Javascript
JS打开新窗口防止被浏览器阻止的方法
Jan 03 #Javascript
You might like
《PHP编程最快明白》第六讲:Mysql数据库操作
2010/11/01 PHP
PHP解决中文乱码
2017/04/28 PHP
php app支付宝回调(异步通知)详解
2018/07/25 PHP
如何在PHP中使用AES加密算法加密数据
2020/06/24 PHP
JXTree对象,读取外部xml文件数据,生成树的函数
2007/04/02 Javascript
jQuery ajax 路由和过滤器使用说明
2011/08/02 Javascript
javascript:history.go()和History.back()的区别及应用
2012/11/25 Javascript
JavaScript对象和字串之间的转换实例探讨
2013/04/21 Javascript
js 实现日期灵活格式化的小例子
2013/07/14 Javascript
深入理解javascript中defer的作用
2013/12/11 Javascript
Jquery中&quot;$(document).ready(function(){ })&quot;函数的使用详解
2013/12/30 Javascript
jquery制作弹窗提示窗口代码分享
2014/03/02 Javascript
js处理自己不能定义二维数组的方法详解
2014/03/03 Javascript
javascript 拷贝节点cloneNode()使用介绍
2014/04/03 Javascript
onmouseover事件和onmouseout事件全面理解
2016/08/15 Javascript
Vue form 表单提交+ajax异步请求+分页效果
2017/04/22 Javascript
详解webpack loader和plugin编写
2018/10/12 Javascript
PHP实现基于Redis的MessageQueue队列封装操作示例
2019/02/02 Javascript
layui固定下拉框的显示条数(有滚动条)的方法
2019/09/10 Javascript
[52:29]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第三局
2016/03/03 DOTA
多线程爬虫批量下载pcgame图片url 保存为xml的实现代码
2013/01/17 Python
简单的通用表达式求10乘阶示例
2014/03/03 Python
Python基于csv模块实现读取与写入csv数据的方法
2018/01/18 Python
python批量创建指定名称的文件夹
2019/03/21 Python
python破解bilibili滑动验证码登录功能
2019/09/11 Python
ipad上运行python的方法步骤
2019/10/12 Python
PyQt5多线程刷新界面防假死示例
2019/12/13 Python
Python numpy大矩阵运算内存不足如何解决
2020/11/19 Python
德国珠宝和手表在线商店:VALMANO
2019/03/24 全球购物
英国鞋网:Rubber Sole
2020/03/03 全球购物
PPP协议组成及简述协议协商的基本过程
2015/05/28 面试题
几道Web/Ajax的面试题
2016/11/05 面试题
普罗米修斯教学反思
2014/02/06 职场文书
2014植树节活动总结
2014/03/11 职场文书
有关水浒传的读书笔记
2015/06/25 职场文书
MySQL事务的隔离级别详情
2022/07/15 MySQL