jQuery實(shí)現(xiàn)div跟隨鼠標(biāo)移動
重點(diǎn)是弄清楚如何獲取鼠標(biāo)現(xiàn)位置與移動后位置,div現(xiàn)在位置與移動后位置:
用jQuery實(shí)現(xiàn)div隨鼠標(biāo)移動而移動,不是鼠標(biāo)自身的位置!!而是div相對于之前位置的移動
代碼如下:(注意看綠色部分的解釋)
<!DOCTYPE html>
<html>
<head>
<meta charset="{utf-8}">
<title></title>
<script src="../jquery-3.2.0.js"></script>
<style>
.aa{
height: 100px;
width: 200px;
position: absolute;
background-color: green;
}
</style>
</head>
<body>
<div class="aa"></div>
</body>
</html>
<script>
$(".aa").mousedown(function(e){
//設(shè)置移動后的默認(rèn)位置
var endx=0;
var endy=0;
//獲取div的初始位置,要注意的是需要轉(zhuǎn)整型,因?yàn)楂@取到值帶px
var left= parseInt($(".aa").css("left"));
var top = parseInt($(".aa").css("top"));
//獲取鼠標(biāo)按下時的坐標(biāo),區(qū)別于下面的es.pageX,es.pageY
var downx=e.pageX;
var downy=e.pageY; //pageY的y要大寫,必須大寫??!
// 鼠標(biāo)按下時給div掛事件
$(".aa").bind("mousemove",function(es){
//es.pageX,es.pageY:獲取鼠標(biāo)移動后的坐標(biāo)
var endx= es.pageX-downx+left; //計算div的最終位置
var endy=es.pageY-downy+top;
//帶上單位
$(".aa").css("left",endx+"px").css("top",endy+"px")
});
})
$(".aa").mouseup(function(){
//鼠標(biāo)彈起時給div取消事件
$(".aa").unbind("mousemove")
})
</script>
區(qū)別于下面這段代碼:(最終實(shí)現(xiàn)效果是div隨鼠標(biāo)位置移動,具體效果想看的可以粘貼復(fù)制對比看看差距在哪)
<script>
$(".aa").mousedown(function(e){
$(document).bind("mousemove",function(e){
$(".aa").css("left",e.pageX).css("top",e.pageY)
});
})
$(".aa").mouseup(function(){
$(document).unbind("mousemove")
})
</script>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JQuery獲取鼠標(biāo)進(jìn)入和離開容器的方向
- jquery實(shí)現(xiàn)的提示浮層跟隨鼠標(biāo)移動
- Jquery實(shí)現(xiàn)鼠標(biāo)移動放大圖片功能實(shí)例
- jQuery實(shí)現(xiàn)鼠標(biāo)滑過圖片移動特效
- jQuery 網(wǎng)易相冊鼠標(biāo)移動顯示隱藏效果實(shí)現(xiàn)代碼
- Jquery創(chuàng)建層顯示標(biāo)題和內(nèi)容且隨鼠標(biāo)移動而移動
- JQuery實(shí)現(xiàn)鼠標(biāo)移動圖片顯示描述層的方法
- jQuery鼠標(biāo)移動圖片上實(shí)現(xiàn)放大效果
- jquery插件實(shí)現(xiàn)鼠標(biāo)經(jīng)過圖片右側(cè)顯示大圖的效果(類似淘寶)
- jQuery插件jFade實(shí)現(xiàn)鼠標(biāo)經(jīng)過的圖片高亮其它變暗
- jQuery實(shí)現(xiàn)的響應(yīng)鼠標(biāo)移動方向插件用法示例【附源碼下載】
相關(guān)文章
jQuery實(shí)現(xiàn)轉(zhuǎn)動隨機(jī)數(shù)抽獎效果的方法
這篇文章主要介紹了jQuery實(shí)現(xiàn)轉(zhuǎn)動隨機(jī)數(shù)抽獎效果的方法,涉及jQuery操作隨機(jī)數(shù)及頁面元素的相關(guān)技巧,需要的朋友可以參考下2015-05-05
jQuery控制DIV層實(shí)現(xiàn)由大到小,由遠(yuǎn)及近動畫變化效果
這篇文章主要介紹了jQuery控制DIV層實(shí)現(xiàn)由大到小,由遠(yuǎn)及近動畫變化效果,涉及jQuery基于animate方法操作頁面元素實(shí)現(xiàn)動畫漸變效果的相關(guān)技巧,需要的朋友可以參考下2015-10-10
jQuery實(shí)現(xiàn)菜單欄導(dǎo)航效果
這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)簡單菜單欄導(dǎo)航效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08
『jQuery』.html(),.text()和.val()的概述及使用
如何使用jQuery中的.html(),.text()和.val()三種方法,用于讀取,修改元素的html結(jié)構(gòu),元素的文本內(nèi)容,以及表單元素的value值的方法2013-04-04
Jquery實(shí)現(xiàn)網(wǎng)頁跳轉(zhuǎn)或用命令打開指定網(wǎng)頁的解決方法
本篇文章是對使用Jquery實(shí)現(xiàn)網(wǎng)頁跳轉(zhuǎn)或用命令打開指定網(wǎng)頁的解決方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以參考下2013-07-07
JQuery Ajax跨域調(diào)用和非跨域調(diào)用問題實(shí)例分析
這篇文章主要介紹了JQuery Ajax跨域調(diào)用和非跨域調(diào)用問題,結(jié)合具體實(shí)例形式分析了jQuery基于ajax的非跨域請求及跨域請求相關(guān)實(shí)現(xiàn)技巧與操作注意事項(xiàng),需要的朋友可以參考下2019-04-04

