av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

原生JS實現拖拽功能

瀏覽:78日期:2024-04-09 16:08:23

本文實例為大家分享了JS實現拖拽功能的具體代碼,供大家參考,具體內容如下

拖拽的原理:三個事件 onmousedown、onmousemove、onmousemove

1、鼠標按下,觸發(fā)onmousedown,獲取鼠標坐標x,y,獲取元素坐標x,y

通過event.clientX、event.clientY獲取鼠標位置的坐標

let x = e.clientX - box.offsetLeft; //鼠標點擊坐標距離盒子左邊緣的距離let y = e.clientY - box.offsetTop; //鼠標點擊坐標距離盒子上邊緣的距離

2、設置元素left、top值,(元素要設置position:absolute)

box.style.left = ev.clientX - x + ’px’;box.style.top = ev.clientY - y + ’px’;

3、放開鼠標取消dom事件

下面是詳細代碼:我只開了橫向移動

<!DOCTYPE html><html lang='en'> <head> <meta charset='UTF-8'> <meta name='viewport' content='width=device-width, initial-scale=1.0'> <meta http-equiv='X-UA-Compatible' content='ie=edge'> <title>Document</title> <style> #box { width: 100px; height: 100px; background: red; position: absolute } </style></head> <body style='position: relative;overflow: hidden;'> <div id='box'> </div> <script> window.onload = function () { let box = document.getElementById(’box’) box.onmousedown = function (ev) { let e = ev || event; let x = e.clientX - box.offsetLeft; //鼠標點擊坐標距離盒子左邊緣的距離 let y = e.clientY - box.offsetTop; //鼠標點擊坐標距離盒子上邊緣的距離 document.onmousemove = function (ev) { let e = ev || event; box.style.left = ev.clientX - x + ’px’; box.style.top = ev.clientY - y + ’px’; let bodyScreenX = ev.screenX let bodyClientWidth = document.body.clientWidth document.onmouseup = function (ev) { if (ev.clientX - x < 0) { box.style.left = 0 } else if (bodyScreenX > bodyClientWidth) { box.style.right = 0 box.style.left = bodyClientWidth - 100 + ’px’ } document.onmousemove = null; document.onmouseup = null; } } } } </script></body> </html>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 亚洲一区二区三区在线免费观看 | 特级a欧美做爰片毛片 | 成年网站在线观看 | 国产中文字幕在线观看 | 在线观看日韩av | 久久综合久久综合久久 | 91高清在线观看 | 婷婷亚洲综合 | 国产精品综合色区在线观看 | 亚洲伦理自拍 | 成人一区二区三区 | 国产精品欧美一区二区三区 | 亚洲成人一区二区在线 | 国产一级电影在线观看 | 亚洲成人一级片 | 欧美激情一区二区三级高清视频 | 亚洲福利一区 | 玖玖色在线视频 | 免费精品国产 | 亚洲av毛片 | 天天综合操 | 日韩在线观看中文字幕 | 欧美多人在线 | 欧美一级艳情片免费观看 | 日韩在线看片 | 亚洲网站在线观看 | www久久99 | 看羞羞视频 | 91在线区| 亚洲精品一区二区三区在线 | 亚洲高清视频在线观看 | 青青草免费在线视频 | 日韩高清中文字幕 | 99在线视频观看 | 成人精品久久 | 欧美片网站免费 | 99精品在线 | 亚洲性视频 | 一本综合久久 | 久久午夜视频 | 久久久久久国产精品久久 |