Jquery實現(xiàn)自定義窗口隨意的拖拽
更新時間:2014年03月12日 15:08:57 作者:
點擊一個按鈕時,彈出一個自定義窗口,并且可以隨意的拖拽,jquery也可以實現(xiàn)這樣的功能,下面有個不錯的示例,大家可以感受下
在網(wǎng)頁上我們經(jīng)??吹?,當(dāng)點擊一個按鈕時,彈出一個自定義窗口,并且可以隨意的拖拽,從而改變其位置
使用jquery實現(xiàn)拖拽,則必須要jquery的文件了,實現(xiàn)步驟:
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;//移動標(biāo)記
var _x,_y;//鼠標(biāo)離控件左上角的相對位置
$(".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;//移動時鼠標(biāo)位置計算控件左上角的絕對位置
var y=e.pageY-_y;
$(".win").css({top:y,left:x});//控件新位置
}
}).mouseup(function(){
_move=false;
//$(".wTop").fadeTo("fast",1);//松開鼠標(biāo)后停止移動并恢復(fù)成不透明
});
}
//初始化拖拽div的位置
function initPosition(){
//計算初始化位置
var itop=($(document).height()-$(".win").height())/2;
var ileft=($(document).width()-$(".win").width())/1.8;
//設(shè)置被拖拽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實現(xiàn)拖拽,則必須要jquery的文件了,實現(xiàn)步驟:
1、引入jquery文件
2、編寫js腳本
具體代碼:
html代碼:
復(fù)制代碼 代碼如下:
<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樣式:
復(fù)制代碼 代碼如下:
<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腳本:
復(fù)制代碼 代碼如下:
<script language="javascript" type="text/javascript">
$(function(){
//拖拽
dragAndDrop();
//初始化位置
initPosition();
//點擊按鈕
clickShowBtn();
});
//拖拽
function dragAndDrop(){
var _move=false;//移動標(biāo)記
var _x,_y;//鼠標(biāo)離控件左上角的相對位置
$(".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;//移動時鼠標(biāo)位置計算控件左上角的絕對位置
var y=e.pageY-_y;
$(".win").css({top:y,left:x});//控件新位置
}
}).mouseup(function(){
_move=false;
//$(".wTop").fadeTo("fast",1);//松開鼠標(biāo)后停止移動并恢復(fù)成不透明
});
}
//初始化拖拽div的位置
function initPosition(){
//計算初始化位置
var itop=($(document).height()-$(".win").height())/2;
var ileft=($(document).width()-$(".win").width())/1.8;
//設(shè)置被拖拽div的位置
$(".win").css({top:itop,left:ileft});
}
//點擊顯示按鈕
function clickShowBtn(){
$("#show").click(function(){
$(".win").show(1000);
});
$("#hidden").click(function(){
$(".win").hide(1000);
});
}
</script>
引入的js文件
復(fù)制代碼 代碼如下:
<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
您可能感興趣的文章:
- JQuery UI的拖拽功能實現(xiàn)方法小結(jié)
- 簡單的jquery拖拽排序效果實現(xiàn)代碼
- jQuery拖拽div實現(xiàn)思路
- JQuery之拖拽插件實現(xiàn)代碼
- jquery實現(xiàn)簡單的拖拽效果實例兼容所有主流瀏覽器
- jQuery手機瀏覽器中拖拽動作的艱難性分析
- 基于jquery的一個拖拽到指定區(qū)域內(nèi)的效果
- jquery 可拖拽的窗體控件實現(xiàn)代碼
- Jquery拖拽并簡單保存的實現(xiàn)代碼
- 基于jquery實現(xiàn)的鼠標(biāo)拖拽元素復(fù)制并寫入效果
- jQuery拖拽插件gridster使用指南
- jQuery 版元素拖拽原型代碼
- jQuery實現(xiàn)的簡單拖拽功能示例
相關(guān)文章
jQuery使用removeClass方法刪除元素指定Class的方法
這篇文章主要介紹了jQuery使用removeClass方法刪除元素指定Class的方法,可實現(xiàn)針對指定元素樣式的批量刪除功能,具有一定參考借鑒價值,需要的朋友可以參考下2015-03-03
jQuery取得元素標(biāo)簽名稱小結(jié)(附代碼)
這篇文章主要介紹了 jquery如何取得元素標(biāo)簽名稱,將html和js代碼附上,具體操作步驟大家可查看下文的詳細(xì)講解,感興趣的小伙伴們可以參考一下。2017-08-08
jQuery實現(xiàn)的tab標(biāo)簽切換效果示例
這篇文章主要介紹了jQuery實現(xiàn)的tab標(biāo)簽切換效果,結(jié)合實例形式分析了jQuery響應(yīng)鼠標(biāo)事件動態(tài)變換頁面元素屬性的相關(guān)操作技巧,需要的朋友可以參考下2016-09-09

