最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Jquery寫一個鼠標拖動效果實現(xiàn)原理與代碼

 更新時間:2012年12月24日 09:35:48   作者:  
近日項目中要做一個鼠標拖拽層的效果,于是手動使用Jquery做了一個,發(fā)出來跟大伙兒分享一下,并希望能得到高手的指點,如何有高手改進的話,在下不勝感激
近日項目中要做一個鼠標拖拽層的效果,于是手動使用Jquery做了一個,發(fā)出來跟大伙兒分享一下,并希望能得到高手的指點,如果哪位大俠覺得我的思路和代碼不正確或者需要改進的話,希望能指點一二,在下感激不盡。

我的思路是這樣的

1、在鼠標按下的時候,捕獲鼠標的當前位置;

2、得到要移動對象的當前位置信息;

3、鼠標移動時,計算鼠標移動的距離,將這個距離更新到對象的位置,在我的代碼中,我試用絕對定位來表示對象的位置;

4、當鼠標移出對象或者鼠標彈起的時候,則認為對象處于不能移動的狀態(tài)。這個在我的代碼中使用一個bool類型的變量isMouseDown表示,當這個變量為true的時候,則說明對象處于可移動狀態(tài),如果為false的時候,表示對象處于不可移動狀態(tài)。鼠標移出對象或者彈出的時候,就將isMouseDown置為false。

好了,思路就是這樣,下面將代碼貼出來,如果我的思路中表達的不清楚的話,可以在代碼中看出來:
復制代碼 代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>使用鼠標拖動層代碼</title>
<style type="text/css">
#Main
{
width:400px;
height:400px;
position:absolute;
top:10px;
left:0;
border:1px solid #CCC;
border-radius:5px;
background-color:Green;
}
h3
{
margin:0;
width:400px;
height:40px;
background-color:Gray;
cursor:move;
line-height:40px;
border-radius:5px 5px 0 0;
}
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.min.js"></script>
<script type="text/javascript">
//注冊一個Jquery的鼠標拖動函數(shù),參數(shù)為要拖動的對象
$.fn.extend({ SliderObject: function (objMoved) {
var isMouseDown = false; //鼠標是否按下
var mouseDownPosiX;
var mouseDownPosiY;
var InitPositionX;
var InitPositionY;
var obj = $(objMoved) == undefined ? $(this) : $(objMoved);
obj.mousedown(function (e) {
//當鼠標按下時捕獲鼠標位置以及對象的當前位置
mouseDownPosiX = e.pageX;
mouseDownPosiY = e.pageY;
isMouseDown = true;

InitPositionX = obj.css("left").replace("px", "");
InitPositionY = obj.css("top").replace("px", "");

}).mousemove(function (e) {
//當鼠標按下并且移動時,首先判斷鼠標是否在當前焦點,以及鼠標是否已經彈起,
if ($(this).is(":focus") && isMouseDown) {
var tempX = parseInt(e.pageX) - parseInt(mouseDownPosiX) + parseInt(InitPositionX);
var tempY = parseInt(e.pageY) - parseInt(mouseDownPosiY) + parseInt(InitPositionY);
obj.css("left", tempX + "px").css("top", tempY + "px");
}
//當鼠標彈起或者離開元素時,將鼠標彈起置為false,不移動對象
}).mouseup(function () {
isMouseDown = false;
}).mouseleave(function () {
isMouseDown = false;
});
}
});
$(document).ready(function () {
$("#Slider").SliderObject($("#Main"));
})
</script>
</head>
<body>
<div id="Main">
<h3>鼠標放在這里拖動我</h3>
<div id="Container">可以使用鼠標拖動的層</div>
</div>
</body>
</html>

相關文章

  • jquery查找tr td 示例模擬

    jquery查找tr td 示例模擬

    jquery怎么查找tr td,下面模擬了一個table出來,給大家參考
    2014-05-05
  • jQuery插件HighCharts繪制2D圓環(huán)圖效果示例【附demo源碼下載】

    jQuery插件HighCharts繪制2D圓環(huán)圖效果示例【附demo源碼下載】

    這篇文章主要介紹了jQuery插件HighCharts繪制2D圓環(huán)圖效果,結合實例形式分析了jQuery使用HighCharts插件繪制圓環(huán)圖的實現(xiàn)步驟與相關操作技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下
    2017-03-03
  • jquery中ajax跨域方法實例分析

    jquery中ajax跨域方法實例分析

    這篇文章主要介紹了jquery中ajax跨域方法,結合實例分析了jQuery中使用getJSON及$.ajax實現(xiàn)ajax跨域的技巧,需要的朋友可以參考下
    2015-12-12
  • jquery實現(xiàn)滑動特效代碼

    jquery實現(xiàn)滑動特效代碼

    這篇文章主要介紹了jquery實現(xiàn)滑動特效代碼, .slideUp([duration][,complete])目標元素向上滑入隱藏;.slideDown([duration][,complete])目標元素向下滑出顯示;.slideToggle([duration][,complete])目標元素隱藏則向下滑出顯示,否則向上滑入隱藏;需要的朋友參考下
    2015-08-08
  • jquery實現(xiàn)焦點輪播效果

    jquery實現(xiàn)焦點輪播效果

    本文主要介紹了jquery實現(xiàn)焦點輪播效果的示例代碼,具有很好的參考價值,下面跟著小編一起來看下吧
    2017-02-02
  • cookie.js 加載順序問題怎么才有效

    cookie.js 加載順序問題怎么才有效

    在使用cookie.js時,只有在jquery.js文件后加載整體才有效,下面與大家分享下有效加載順序,有此需求的朋友可以參考下
    2013-07-07
  • jQuery彈出層插件簡化版代碼

    jQuery彈出層插件簡化版代碼

    這個簡化版不能在別的框架彈出層的,所以也就沒有了那個cssurl屬性了,也沒有target 屬性了
    2008-10-10
  • jquery+h5實現(xiàn)九宮格抽獎特效(前后端代碼)

    jquery+h5實現(xiàn)九宮格抽獎特效(前后端代碼)

    這篇文章主要為大家詳細介紹了jquery+h5實現(xiàn)九宮格抽獎特效,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • jquery trigger偽造a標簽的click事件取代window.open方法

    jquery trigger偽造a標簽的click事件取代window.open方法

    這篇文章主要介紹了使用jquery trigger 觸發(fā)a標簽的click事件取代window.open方法,需要的朋友可以參考下
    2014-06-06
  • jQuery validate 驗證radio實例

    jQuery validate 驗證radio實例

    這篇文章主要介紹了jQuery validate 驗證radio實例代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03

最新評論

襄汾县| 长岭县| 岚皋县| 五寨县| 突泉县| 宜兰市| 商南县| 电白县| 贵港市| 龙海市| 铁岭县| 邳州市| 双桥区| 祁门县| 丁青县| 修武县| 资讯 | 沙坪坝区| 莒南县| 肥东县| 玉屏| 上蔡县| 文化| 建宁县| 晋宁县| 额敏县| 临沭县| 响水县| 云霄县| 牡丹江市| 澄江县| 高平市| 岳普湖县| 安义县| 浠水县| 高雄市| 府谷县| 道真| 腾冲县| 邻水| 郸城县|