Jquery实现拖拽

在网页上我们经常看到,当点击一个按钮时,弹出一个自定义窗口,并且可以随意的拖拽,从而改变其位置

使用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>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值