鼠标事件

先列出html5中鼠标常见的一系列事件:

事件名称

描述

onclick

当单击鼠标时运行脚本

ondblclick

当双击鼠标时运行脚本

ondrag

当拖动元素时运行脚本

ondragend

当拖动操作结束时运行脚本

ondragenter

当元素被拖动至有效的拖放目标时运行脚本

ondragleave

当元素离开有效拖放目标时运行脚本

ondragover

当元素被拖动至有效拖放目标上方时运行脚本

ondragstart

当拖动操作开始时运行脚本

ondrop

当被拖动元素正在被拖放时运行脚本

onmousedown

当按下鼠标按钮时运行脚本

onmousemove

当鼠标指针移动时运行脚本

onmouseout

当鼠标指针移出元素时运行脚本

onmouseover

当鼠标指针移至元素之上时运行脚本

onmouseup

当松开鼠标按钮时运行脚本

onmousewheel

当转动鼠标滚轮时运行脚本

onscroll

当滚动元素滚动元素的滚动条时运行脚本

下面的例子实现了部分鼠标事件:

div { width: 30px;border: 1px solid gray; height: 30px;background-color: coral;}

onclick = "myclick()"

οndblclick="mydblclick()"

οnmοuseenter="mymouseEnter()"

οnmοusedοwn="mymousesDown()"

οnmοuseup="mymouseUp()"

>

function myclick(){

console.log("我被点了一下!")

}

function mydblclick(){

console.log("我被点了两下!")

}

function mymouseEnter(){

console.log("我的鼠标移进来了!")

}

function mymousesDown(){

console.log("我的鼠标点下去了!")

}

function mymouseUp(){

console.log("我的鼠标松开了!")

}

运行以上代码,可以发现如下几个问题:

ondblclick表示双击,触发这个函数时,同时也执行了两次 onclick 鼠标单击函数。

在上述例子中,双击元素会输出: 我被点了一下!我被点了一下!我被点了两下!

onclick事件是 onmousedown事件和onmouseup事件的结合体。实际上onclick事件是在onmouseup事件触发后再触发;

单击元素,先输出: 我的鼠标松开了!,再输出:我被点了一下!

鼠标事件属性

在使用鼠标事件函数时可以往函数中传入event参数,event代表鼠标的事件对象。

例如:

div { width: 30px;border: 1px solid gray; height: 30px;background-color: coral;}

function myclick(event){

console.log(event)

}

运行页面,单击元素,在控制台中可见:

MouseEvent对象

对象中常见属性介绍:

属性

描述

clientX

返回鼠标位置相对于浏览器窗口左上角的水平坐标

clientY

返回鼠标位置相对于浏览器窗口左上角的垂直坐标

offsetX

返回鼠标位置距离事件作用对象左侧边缘的水平距离

offsetY

返回鼠标位置距离事件作用对象左侧边缘的垂直距离

pageX

返回鼠标位置距离文档左侧边缘的距离

pageY

返回鼠标位置距离文档顶部的距离

altKey

鼠标事件发生时是否按下了alt键,返回为bool值

ctrlKey

鼠标事件发生时是否按下了ctrl键,返回为bool值

metaKey

鼠标事件发生时是否按下了meta键,返回为bool值

shiftKey

鼠标事件发生时是否按下了shift键,返回为bool值

其他的可以自己点开看看,输出试试;

举例:

div { width: 30px;border: 1px solid gray; height: 30px;background-color: coral;}

function myclick(event){

console.log(event)

console.log("触发事件的dom元素的ID:"+event.target.id)

console.log("事件类型:"+event.type)

}

结果如下:

html中的鼠标事件怎么写,html5中的鼠标事件以及鼠标事件属性相关推荐

  1. 在html5中 空标签可以不写,HTML5中标签之间尽量不要加enter或者空格

    HTM友,记基开前不接些前家我告对猿果水使钮控L5中如果标签之间随意使用换行或者空格可能会出现意向不朋支不器几事为的时后级功发发来久都这样含制层是请些间例业多在上屏屏有到随到的bug. 具体实例: 写 ...

  2. 媒体查询在html中怎么写,HTML5中的媒体查询

    HTML5中的媒体查询 时间:2014-6-6 在我看来,在网站设计领域,媒体查询一直是多年最大的促变因素-大概是因为CSS本身已成为主流,CSS的广泛采用允许我们抛弃那些刚性限制的基于表单的网站;然 ...

  3. html5中ol的意思,详解HTML5中ol标签的用法

    定义和用法 标签定义有序列表. HTML 4.01 与 HTML 5 之间的差异 在 HTML 4.01 中,不赞成使用 "start" 属性,在 HTML 5 中是允许的. 在 ...

  4. html中input的color,怎么使用html5中input的color颜色拾取器?使用方法分享!

    从事编程方面类的小伙伴们都知道时不时更新换代是我们习以为常的家常便饭对于程序员来说,那么今天我们就来说说:"怎么使用html5中input新增type属性color颜色拾取器?"这 ...

  5. html中form标签的作用style,HTML5中meta常用标签属性说明

    HTML5中meta常用标签属性说明 IE 兼容模式,Bootstrap 不支持 IE 古老的兼容模式.为了让 IE 浏览器运行最新的渲染模式下,建议将此  标签加入到你的页面中: content属性 ...

  6. 浅析HTML5中标签del和ins以及HTML5中被舍弃的标签

    浅析HTML5中标签del和ins 在HTML中,一般购物网站的开发中会多次重复用到删除标签和下划线标签,若要实现删除线效果,可爱的程序员们起初都会选择用标签,实现文字下划线呢,也会自然而然的想到用标 ...

  7. html获取jsq中定义的参数,如何在HTML5中标记也可用作行标题的数据单元格?

    我试图创建一个语义正确和可访问(WCAG 2.0)HTML5数据表.第一列包含的数据也可以作为行的标题.如何在HTML5中标记也可用作行标题的数据单元格? 在HTML 4.01/XHTML 1.0我用 ...

  8. html5中div怎么横着写,html5:div 横向排列的方法

    div 横向排列的方法. 以下面这组 div 为例,wrap 的高度由内容撑开 div1 div2 div3 平时是这样的,上下排列~ float 浮动 #div1{ float: left; } # ...

  9. html5中矩形条怎么写,html5中往矩形中贴图片

    分两步: 1. 画布大小就是矩形的大小 aaa 2. 画到矩形上的代码 var IMG_SRC = "./1.jpg"; function drawRect() { var can ...

最新文章

  1. 看不懂代码?AI给你做翻译,说人话的那种
  2. cidr斜线记法地址块网络前缀_学习笔记之《计算机网络》- 网络层(一)
  3. 学习如何看懂SQL Server执行计划(三)——连接查询篇
  4. GitHub访问越来越慢了,怎么办?
  5. openresty开发系列24--openresty中lua的引入及使用
  6. php图片长宽处理,PHP重置JPG图片尺寸的函数
  7. 粤教版管理计算机中的文件教案,最新粤教版初中信息技术第一册教案(全册).docx...
  8. Spring Boot自定义错误页面
  9. 数据全景洞察概念简介
  10. Volley源码学习2--cache类
  11. 怎么用eclipse修改web工程的访问路径
  12. spring cloud(一) 副 consul
  13. 数字图像处理——图像的统计特征
  14. java程序设计俄罗斯方块_Java俄罗斯方块实现代码
  15. 世界500强面试题----反应能力
  16. P61-指针-指针和数组
  17. 用命令启动java我的世界_我的世界Minecraft Mod开发学习笔记 - 实现一个简单的命令Mod...
  18. excel填充序列_猴哥讲述:excel的自动填充功能——自动填充单元格
  19. 【igraph实例】Commmunity 识别
  20. 干货教程:如何把一张照片用PS做成漫画风格(附最新视频教程)

热门文章

  1. 降成本设计,刻不“容”缓
  2. OCZ REVODRIVE3 used in CentOS 5.x x64 on DELL R610 Server's PCI-E x4
  3. Python字典排序、字典列表排序、嵌套字典排序
  4. HTML5:移动互联网的第二个苹果
  5. 进程替换exec系列函数
  6. 事件冒泡(快速理解)
  7. 使用TensorFlow实现GRU
  8. chrome Stalled时间过长
  9. Android 修改盒子路由方式 Static / DHCP
  10. 华为机试题80-整型数组合并