当前位置: 首页 > news >正文

网站中的给我留言怎么做/电脑优化大师

网站中的给我留言怎么做,电脑优化大师,网站备案是否收费,中国建设移动门户网站目录事件监听的使用方式常见的事件监听事件的绑定、解绑事件冒泡键盘事件、键码鼠标事件事件监听的使用方式 <!-- onload可以写在body中&#xff0c;也可以在js脚本中写成window.onload事件监听 --> <body onload"alert(onload);"><!-- js不区分单引…

目录

        • 事件监听的使用方式
        • 常见的事件监听
        • 事件的绑定、解绑
        • 事件冒泡
        • 键盘事件、键码
        • 鼠标事件

 

事件监听的使用方式

<!-- onload可以写在body中,也可以在js脚本中写成window.onload事件监听 -->
<body onload="alert('onload');"><!-- js不区分单引、双引,字符串用单引、双引均可 --><button id="btn" onclick="alert('click');">click me</button><script>// window.οnlοad=function(){//   alert("onload");// }var ele=document.getElementById("btn");// 以属性的形式设置事件监听。可以写匿名函数ele.onmouseover=function(){console.log("mouseover");}function out(){console.log("mouseout");}// 也可以调用,注意只写函数名,函数名后面不加()// 加()表示调用,只在加载页面时执行1次,起不到事件监听的作用ele.onmouseout=out;</script></body>

事件监听可以以属性的形式写在html标签中,但不推荐这样做,因为和html页面内容杂糅在一起,东一处西一处,不好维护。

html只写页面结构、内容,css写页面样式,js完成交互(事件监听)。

样式尽量写在.css文件、style标签中,js代码尽量写在.js文件、script标签中,好维护一些,不要与html页面内容杂糅在一起。

 

常见的事件监听

#键盘按键,不包括鼠标按键
onkeydown  #按键按下
onkeypress  #按键按住
onkeyup  #释放按键
#这3个事件组成一个onclick事件,onclick事件在onkeyup之后触发#鼠标按键
onmousedown
onmouseuponclick  #单击
ondblclick  #双击
#键盘按键、鼠标按键的单双击都算onmousedown  #鼠标移入的一刹那
onmousemove  #鼠标在该元素上移动
onmouseout  #⿏标移出#表单元素
onchange  #元素值(value)改变
onfocus  #聚焦
onblur  #失焦
onsubmit  #提交#页面加载完成
onload  #常用于body元素
window.onload  #在js脚本中可用onload还要先getElement获取元素,可以直接用这个,更简单

此外还有媒体播放onplay、拖放ondrag等。

事件监听是全小写

 

事件的绑定、解绑

var app=document.getElementById("app");function out(){console.log("mouseover");
}// 绑定事件监听。参数:事件、处理事件的函数,函数可以使用匿名函数,但使用匿名函数解绑不了
app.addEventListener("mouseover",out);// 解除事件监听
app.removeEventListener("mouseover",out);

onmouseover这些带on的事件监听,其实都是对addEventListener()的封装,已经设置好了事件

 

事件冒泡

<div id="father"><div id="son"></div>
</div>

事件默认会逐级冒泡,会被所有设置了该事件监听的祖先元素处理。

eg. 父元素、子元素都监听了鼠标移入事件,如果子元素发生鼠标移入事件,事件先被子元素处理,再冒泡到父元素,被父元素处理,因为子元素也是父元素的一部分,也算父元素发生了该事件。

可以在某一级取消事件冒泡,取消之后该事件不再往上一级冒泡

var son=document.getElementById("son");son.onmouseover=function(){//....   // 处理事件event.cancelBubble=true;  //取消事件冒泡。Bubble 冒泡
}

event是js预定义的事件对象名,表示一个事件对象。

如果不想使用这个名称,可以在参数表末尾写一个形参表示事件对象。

事件会自动传入。

 

键盘事件、键码

有时候需要监听指定的按键,比如按Enter发送消息,那就需要判断按下的键是不是Enter。

键盘上的每个按键都对应一个键码,键码是一个数字,根据键码来判断按下的是哪个键。

<input type="text" id="input" /><script>var input=document.getElementById("input");input.onkeydown=function(){if(event.keyCode==13)console.log("你按了Enter");// 监听组合键if(event.ctrlKey && event.keyCode==67)console.log("你按了Ctrl+C");}
</script>

键码表参考:
https://www.bejson.com/othertools/keycodes/

组合键:ctrlKey、shiftKey、altKey
均为布尔值,如果按住了ctrl,那ctrlKey的值就是true,以此类推。

 

鼠标事件

有时候需要监听鼠标事件,比如左键按下、获取单击位置的坐标

var app=document.getElementById("app");// 按下鼠标按键时
app.onmousedown=function(){// 键盘是keyCode,鼠标是button。鼠标左键是0,中键(滚轮)是1,右键是2if(event.button==0){  // 在浏览器中的横纵坐标,以浏览器左上角书签栏下面的地方为原点console.log(event.clientX);console.log(event.clientY);// 在屏幕上的横纵坐标,以屏幕左上角为原点console.log(event.screenX);console.log(event.screenY);}
}// 释放鼠标按键时
app.onmouseup=function(){if(event.button==0){// 点击点的横纵坐标console.log(event.clientX);console.log(event.clientY);console.log(event.screenX);console.log(event.screenY);}
}

如果要获取鼠标拖放的起止位置,监听mousedown获取开始位置坐标,监听mouseup获取结束位置坐标

http://www.jmfq.cn/news/5124421.html

相关文章:

  • 建设银行网站修改手机号/中国十大搜索引擎排名
  • word上下页边距怎么调/福建seo优化
  • 湖北网站推广技巧/最近的新闻有哪些
  • 淘宝客网站源码加各类插件/百度快照在哪里
  • 做一个网站成本是多少合适/沈阳seo网站关键词优化
  • 经典企业网站模板/营销策划公司 品牌策划公司
  • 58网站为啥做不好/产品优化是什么意思
  • 番禺是哪里/广州seo站内优化
  • 做鞋子的招聘网站有哪些/网站关键字优化软件
  • 泰安新闻频道在线直播/seo营销推广公司
  • 可以做推文的网站/推广普通话黑板报
  • 互联网与智慧酒店建设/seo程序专员
  • typora wordpress/东莞百度快照优化排名
  • 网页设计师中级证书有用吗/梁水才seo优化专家
  • 简洁的门户网站/seo关键词排名优化教程
  • 自动打开多个同网站网页/sem竞价托管费用
  • 网站欢迎屏怎么做/发外链的论坛
  • 淘宝seo搜索优化/西安企业seo外包服务公司
  • 瑞安app开发/seo外包公司哪家好
  • vs2013做网站/微信朋友圈广告推广代理
  • 上海找做网站公司好/互联网推广渠道有哪些
  • 上海市建交人才网/seo排名优化哪家好
  • 最好的做网站公司有哪些/电商推广和网络推广的区别
  • 中国工程建设标准化协会官方网站/产品如何做网络推广
  • 北京公司网站建设/百度 营销中心
  • 建站案例/武汉电脑培训学校有哪些
  • 自动生成网站地图怎么做/中山seo排名
  • 做铝锭的网站/搜索引擎有哪些平台
  • 哪个网站是专门做装修的/seo企业建站系统
  • 网页设计个人总结/唐山seo排名优化