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; //計(jì)算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)input框獲取焦點(diǎn)的簡單實(shí)例
下面小編就為大家?guī)硪黄猨query實(shí)現(xiàn)input框獲取焦點(diǎn)的簡單實(shí)例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-01-01
jQuery實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊處心形漂浮的炫酷效果示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊處心形漂浮的炫酷效果,涉及jQuery事件響應(yīng)及頁面元素屬性動態(tài)變換相關(guān)操作技巧,需要的朋友可以參考下2018-04-04
使用jquery局部刷新(jquery.load)從數(shù)據(jù)庫取出數(shù)據(jù)
jquery提供了很好的ajax交互,我這里用的是直接返回字符串,用的是jquery.load方法從數(shù)據(jù)庫取出的數(shù)據(jù)2014-01-01
在網(wǎng)站上應(yīng)該用的30個jQuery插件整理
jQuery插件是網(wǎng)頁設(shè)計(jì)師最喜歡的。從圖像滑塊,圖像畫廊和導(dǎo)航插件,它們是如此眾多,如此多樣,如此驚人的和互動可以制作美化網(wǎng)站2011-11-11
jQuery EasyUI編輯DataGrid用combobox實(shí)現(xiàn)多級聯(lián)動
本文給大家分享jQuery EasyUI編輯DataGrid用combobox實(shí)現(xiàn)多級聯(lián)動效果的實(shí)例代碼,代碼簡單易懂,非常不錯,具有參考借鑒價值,感興趣的朋友一起看看吧2016-08-08
基于jquery實(shí)現(xiàn)點(diǎn)擊左右按鈕圖片橫向滾動
點(diǎn)擊左右按鈕圖片橫向滾動jquery,一次滾動四個,圖片滾動完成,自動回到第一個版面,效果相當(dāng)不錯,感興趣的前端工程師們可以參考下2013-04-04

