萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> Jquery實現自定義窗口隨意的拖拽

Jquery實現自定義窗口隨意的拖拽

 點擊一個按鈕時,彈出一個自定義窗口,並且可以隨意的拖拽,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> 
copyright © 萬盛學電腦網 all rights reserved