龙空技术网

一文详解Javascript鼠标事件,拖拽原理

黑猫编程 2491

前言:

如今大家对“js触发鼠标滚轮”都比较注意,小伙伴们都想要了解一些“js触发鼠标滚轮”的相关知识。那么小编也在网摘上网罗了一些对于“js触发鼠标滚轮””的相关内容,希望朋友们能喜欢,看官们一起来了解一下吧!

常见鼠标事件

对鼠标进行操作就会产生鼠标事件,比如按下、松开鼠标左键、右键或滚轮等。

onmousemove事件:当鼠标指针在指定元素上移动时,就会触发该事件。

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>Document</title>    <style>        #box{            width: 200px;            height: 200px;            background-color: aqua;        }    </style></head><body>    <div id="box">    </div>    <script>        let box = document.getElementById("box");        box.onmousemove = function(){            box.style.backgroundColor = "red";        }    </script></body></html>

当鼠标移动到div方形区域内,背景颜色变为红色。

onmousedown事件:当鼠标指针移动到指定元素上并按下,会触发该事件。

let box = document.getElementById("box");box.onmousedown = function(){    box.style.backgroundColor = "red";}

onmouseup事件:当鼠标指针移动到指定元素上按下并离开,会触发该事件。

let box = document.getElementById("box");box.onmousedown = function(){    box.style.backgroundColor = "red";}box.onmouseup = function(){    box.style.backgroundColor = "green";}
createElement()方法

createElement():通过指定名称创建一个元素。

项目目标:

在输入框输入非空内容,自动添加到下方列表。

let list = document.getElementById("list");let word = document.getElementById("word");let arr = ["吃饭", "睡觉", "打豆豆"];for (let i = 0; i < arr.length; i++) {	let temp = document.createElement("li");	temp.innerHTML = arr[i];	list.append(temp);}word.onblur = function() {	let value = word.value;	conssole.log(value);	if(value){		let temp = document.createElement("li");		temp.innerHTML = value;		list.append(temp);	}	else		alert("请输入内容");}
event对象

在事件被触发时,js会自动生成一个event对象,控制台输出event可以查看这个事件的具体信息。

项目目标:浏览器中有一个红色小球,鼠标点击,小球就会移动到点击的位置。

let box = document.getElementById("box");document.onclick = function(event) {	let x = event.clientX;	let y = event.clientY;	box.style.left = x + "px";	box.style.top = y + "px";}
拖拽效果

移动时disX和disY没有变化:

项目目标:拖动纸飞机移动。

let img=document.getElementById("img");img.onmousedown = function (event) {    let disX = event.clientX - this.offsetLeft;    let disY = event.clientY - this.offsetTop;    img.onmousemove = function (event) {        let l = event.clientX - disX;        let t = event.clientY - disY;        this.style.left = l + 'px';        this.style.top = t + 'px';    }    img.onmouseup = function () {        img.onmouseup = img.onmousemove = null;    }}
视频讲解

视频加载中...

相关推荐Javascript对象和选项卡实现一文详解javascript轮播图Javascript简介和基础数据类型一文详解Javascript定时器Javascript点击按钮控制图片切换Javascript获取className属性和slice切片一文详解Javascript正则表达式,检测用户名密码合法性Javascript在线刷题输入输出模板,学编程为什么要刷题?

标签: #js触发鼠标滚轮 #js鼠标触发事件 #js拖拽会用到哪些事件 #js触发鼠标滚轮跳动 #js鼠标事件 右键移动