Jquery实现自定义窗口随意的拖拽 - Web前端
作者:98wpeu发布时间:2026-08-01分类:网页前端技术浏览:1
导读:在网页上我们经常看到,当点击一个按钮时,弹出一个自定义窗口,并且可以随意的拖拽,从而改变其位置使用JQuery实现拖拽,则必须要jQuery的文件了,实现步骤:1、引入jque...
在网页上我们经常看到,当点击一个按钮时,弹出一个自定义窗口,并且可以随意的拖拽,从而改变其位置
使用JQuery实现拖拽,则必须要jQuery的文件了,实现步骤:
1、引入jquery文件
2、编写JS脚本
具体代码:
html代码:
复制代码 代码如下:
<button id="show">显示</button>
<div class="win">
<div class="wTop"><p style="float:right;margin:5px 5px 0px 0px;color:white" id="hidden">X</p></div>
<div class="content"></div>
</div>
CSS样式:
复制代码 代码如下:
<style type="text/css">
.win{width:500px;height:600px;background:#000000;border-radius:8px;box-shadow:0px 0px 5px 10px;opacity:0.8;position:absolute;left:0;top:0;display:none}
.win .wTop{height:30px;width:100%;cursor:move}
.win .content{height:570px;width:100%;border-radius:5px;background:white}
</style>
js脚本:
复制代码 代码如下:
<script language="javascript" type="text/JavaScript">
$(function(){
//拖拽
dragAndDrop();
//初始化位置
initPosition();
//点击按钮
clickShowBTn();
});
//拖拽
function dragAndDrop(){
var _move=false;//移动标记
var _x,_y;//鼠标离控件左上角的相对位置
$(".wTop").mousedown(function(e){
_move=true;
_x=e.pageX-parseInt($(".win").css("left"));
_y=e.pageY-parseint($(".win").css("top"));
//$(".wTop").fadeTo(20,0.5);//点击开始拖动并透明显示
});
$(document).mouSEMove(function(e){
if(_move){
var x=e.pageX-_x;//移动时鼠标位置计算控件左上角的绝对位置
var y=e.pageY-_y;
$(".win").css({top:y,left:x});//控件新位置
}
}).mouseup(function(){
_move=false;
//$(".wTop").fadeTo("fast",1);//松开鼠标后停止移动并恢复成不透明
});
}
//初始化拖拽div的位置
function initPosition(){
//计算初始化位置
var itop=($(document).height()-$(".win").height())/2;
var ileft=($(document).width()-$(".win").width())/1.8;
//设置被拖拽div的位置
$(".win").css({top:itop,left:ileft});
}
//点击显示按钮
function clickShowBtn(){
$("#show").click(function(){
$(".win").show(1000);
});
$("#hidden").click(function(){
$(".win").hide(1000);
});
}
</script>
引入的js文件
复制代码 代码如下:
<script type="text/Javascript" src="js/jquery-1.10.2.min.js"></script>
使用JQuery实现拖拽,则必须要jQuery的文件了,实现步骤:
1、引入jquery文件
2、编写JS脚本
具体代码:
html代码:
复制代码 代码如下:
<button id="show">显示</button>
<div class="win">
<div class="wTop"><p style="float:right;margin:5px 5px 0px 0px;color:white" id="hidden">X</p></div>
<div class="content"></div>
</div>
CSS样式:
复制代码 代码如下:
<style type="text/css">
.win{width:500px;height:600px;background:#000000;border-radius:8px;box-shadow:0px 0px 5px 10px;opacity:0.8;position:absolute;left:0;top:0;display:none}
.win .wTop{height:30px;width:100%;cursor:move}
.win .content{height:570px;width:100%;border-radius:5px;background:white}
</style>
js脚本:
复制代码 代码如下:
<script language="javascript" type="text/JavaScript">
$(function(){
//拖拽
dragAndDrop();
//初始化位置
initPosition();
//点击按钮
clickShowBTn();
});
//拖拽
function dragAndDrop(){
var _move=false;//移动标记
var _x,_y;//鼠标离控件左上角的相对位置
$(".wTop").mousedown(function(e){
_move=true;
_x=e.pageX-parseInt($(".win").css("left"));
_y=e.pageY-parseint($(".win").css("top"));
//$(".wTop").fadeTo(20,0.5);//点击开始拖动并透明显示
});
$(document).mouSEMove(function(e){
if(_move){
var x=e.pageX-_x;//移动时鼠标位置计算控件左上角的绝对位置
var y=e.pageY-_y;
$(".win").css({top:y,left:x});//控件新位置
}
}).mouseup(function(){
_move=false;
//$(".wTop").fadeTo("fast",1);//松开鼠标后停止移动并恢复成不透明
});
}
//初始化拖拽div的位置
function initPosition(){
//计算初始化位置
var itop=($(document).height()-$(".win").height())/2;
var ileft=($(document).width()-$(".win").width())/1.8;
//设置被拖拽div的位置
$(".win").css({top:itop,left:ileft});
}
//点击显示按钮
function clickShowBtn(){
$("#show").click(function(){
$(".win").show(1000);
});
$("#hidden").click(function(){
$(".win").hide(1000);
});
}
</script>
引入的js文件
复制代码 代码如下:
<script type="text/Javascript" src="js/jquery-1.10.2.min.js"></script>
相关推荐
- jquery中常用的函数和属性详细解析 - Web前端
- jQuery is()函数用法3例 - Web前端
- jquery form 隐藏的input 选择 - Web前端
- jquery插件冲突(jquery.noconflict)解决方法分享 - Web前端
- jQuery调用RESTful WCF示例代码(GET方法/POST方法) - Web前端
- jquery实现input输入框实时输入触发事件代码 - Web前端
- Jquery实现图片预加载与延时加载的方法 - Web前端
- Jquery实现自定义tooltip示例代码 - Web前端
- jquery基础教程之deferred对象使用方法 - Web前端
- jquery上传插件fineuploader上传文件使用方法(jquery图片上传插件) - Web前端
- 网页前端技术排行
-
- 1[Web前端]用javascript实现默认图片替代未显示的图片 - Web前端
- 2分析Iconfont-阿里巴巴矢量常用图标库 - Web前端
- 3【第六章】Foundation之按钮和下拉功能 - Web前端
- 4jQuery实例教程:制作网页中可折叠的面板 - Web前端
- 5基于jquery的滚动条滚动固定div(附演示下载) - Web前端
- 6jQuery编写widget的一些技巧分享 - Web前端
- 7分享精心挑选的12款优秀jQuery Ajax分页插件和教程 - Web前端
- 8jQuery实现鼠标移到元素上动态提示消息框效果 - Web前端
- 9在Mac/PC上远程调试iPhone/iPad上的网页 - Web前端
- 最近发表
-
- WordPress随机显示特色图片插件:Random Post Thumbnails
- KeePass实现Chrome浏览器自动填充密码方法一
- LNMP一键包nginx 301强制跳转到https教程
- KeePass实现Chrome浏览器自动填充密码方法二
- #建站# 免费的VPS管理软件Xshell8/Xftp8中文版下载
- 使用Xshell 8连接VPS教程_电脑登录vps的方法
- WordPress评论界面添加烟花????效果
- 不同浏览器书签同步方案:坚果云+Floccus_详细使用教程
- iOS端KeePassXC客户端APP:Strongbox Password Safe
- 给WordPress评论中的Gravatar头像图片添加ALT属性


