位置: IT常识 - 正文

DOM_常用事件(dom事件种类)

编辑:rootadmin
常用事件 onload <script> window.onload = function () { ele = document.getElementById("i") console.log(ele.innerHTML); } </script> </head> <body> <div clas ... 常用事件onload<script> window.onload = function () { ele = document.getElementById("i") console.log(ele.innerHTML); } </script></head><body><div class="background"> <div id="i">ivanlee</div></div>

推荐整理分享DOM_常用事件(dom事件种类),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:dom事件有哪些阶段,dom事件模型由什么组成,常见的dom事件,dom事件种类,dom事件有哪些阶段,dom常用事件,dom事件种类,dom常用事件,内容如对您有帮助,希望把文章链接给更多的朋友!

window.onload的方法解决了js在从上到下编译的时候,无法先解析body里面的内容,后解析<script>标签里的事件。

现在script标签在上面,div标签在下面,加入onload方法可以在解析时进行等待,等到解析完div标签。

onsubmit

很多检验是在提交服务器之前进行的,运用onsubmit方法可以在本地进行验证,如果出错了可以立即停止,不需要交给服务器

<form action="" id="i"> 用户名 <input type="text"> 密码 <input type="password"> <input type="submit"></form></div><script> var ele = document.getElementById("i"); var user = document.querySelector("#i [type=text]") var pwd = document.querySelector("#i [type=password]") ele.onsubmit = function (e){ if(user.value.length < 5){ alert(user.value+"长度应该大于5") return false; // 终止事件执行 // e.preventDefault() // 阻止元素默认行为 } }</script>

当用户名长度小于5时,点击提交之后就会弹窗提示(这个过程不会传给服务器)

onchange <select name="provonce" id="s1"> <option value="hebei">请选择省份</option> <option value="hubei">湖北省</option> <option value="hunan">湖南省</option> <option value="hebei">河北省</option> </select> <select name="provonce" id="s2"> <option value="hebei">请选择城市</option> </select></div><script> var data={"hunan":["长沙","岳阳","张家界"],"hubei":["武汉","襄阳","荆州"],"hebei":["石家庄","保定","张家口"]}; var ele = document.getElementById("s1"); var ele2 = document.getElementById("s2"); ele.onchange = function (){ var cities = data[this.value]; //Array ele2.options.length = 1; //1代表有一个默认显示值:请选择城市 for (var i=0;i<cities.length;i++){ var opt = document.createElement("option"); opt.innerText = cities[i]; ele2.appendChild(opt); } }</script>

onmouse<div id="container"> <div id="title">使用了onmouse事件↓</div> <div id="list"> <div class="item1">第一行</div> <div class="item2">第二行</div> <div class="item3">第三行</div> </div> </div><script> // 1.不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件。 // 2.只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。 var container=document.getElementById("container"); var title=document.getElementById("title"); var list=document.getElementById("list"); title.onmouseover = function(){ list.style.display="block"; } container.onmouseleave = function(){ list.style.display="none"; }</script>

onmouseout表示鼠标悬停事件已经发生之后的动作

如果没有离开的动作,那么这三行将会一直被显示,那就需要onmouseleave,表示鼠标离开区域之后发生的动作

DOM_常用事件(dom事件种类)

移开鼠标之后又恢复原来的样子

onkey<input type="text" id="i1"/><script type="text/javascript"> var ele=document.getElementById("i1"); ele.onkeydown=function(e){ console.log("onkeydown",e.key) }; ele.onkeyup=function(e){ console.log("onkeyup",e.keycode) };

onkeyup 事件会在键盘按键被松开时发生。

onkeydown 事件会在用户按下一个键盘按键时发生。

与onkeyup 事件相关的事件发生次序:

onkeydownonkeypressonkeyup

onblur and onfocusvar ele = document.querySelector("#i1");// 获取焦点事件ele.onfocus = function () { console.log("in")};// 失去焦点事件 ele.onblur = function () { if(ele.value.length<5){ ele.value = "太短了,重新输入"; }}

当鼠标点击框的时候,是获取焦点事件鼠标移开以后就失去了,用法就是可以实时的进行判断,如果输入结束可以立即判断输入是否合法。

点击输入框,就输出in了,当我输入‘12’以后并且点击其他地方

冒泡区域

现有两块区域,小的c2,大的c1

<div class="c1"> <div class="c2"></div> </div> <script> var ele1 = document.querySelector(".c1"); ele1.onclick = function () { alert("c1区域") }; var ele2 = document.querySelector(".c2"); ele2.onclick = function (event) { alert("c2区域"); // 如何阻止事件冒泡 event.stopPropagation(); } </script>

一般情况下,鼠标进入绿色区域后,会弹窗显示“c1区域”,到达蓝色部分后会依次弹窗显示“c2区域”,“c1区域”

如果想要达到蓝色区域只属于c2区域,不向外延伸,就加入一个stopPropagation

本文链接地址:https://www.jiuchutong.com/zhishi/310140.html 转载请保留说明!

上一篇:php中__callStatic方法的使用(php static function)

下一篇:discuz 发帖默认权限 模板修改方法(discuz发帖标签)

  • 税务局开专票作废重开流程
  • 对方公司已注销如何付款
  • 会计分录的含义及三要素
  • 公司举办年会的要求有哪些
  • 应收账款计入借方贷方
  • 刚成立的公司好不好
  • 没有抵扣的进项发票,开错了对方没有作废
  • 企业清算未分配利润不分配要交个税吗
  • 劳动仲裁经济补偿金的事实和理由
  • 收到的软件退税怎么处理
  • 投资者投入固定资产的成本
  • 无形资产转让计入什么科目
  • 企业所得税工资薪金和个税申报里一致么
  • 如何购买车辆保险
  • 合同印花税多交了怎么退
  • 在公司发现问题该说吗
  • 增值税小规模纳税人
  • 差额税和增值税怎么算
  • 多交附加税怎么做账
  • mac如何改变用户名
  • tp link无线路由器设置
  • 银行汇票银行不予受理的是
  • 母子公司吸收合并优劣势
  • 本月无销售额,但是有进项,需要认证吗
  • 入库材料未付款属于什么会计科目
  • 存货盘盈怎么做账
  • 怎样搭建php开发平台
  • 本地运行库是什么
  • 质量赔偿款要交税吗
  • 营业利润期末余额怎么算
  • 金融企业允许税前扣除的准备金
  • 什么叫股权溢价之谜?
  • 个人所得税计提基数公式
  • 购入专利权属于
  • 阿里巴巴达摩院ai
  • php简单获取网站的方法
  • 劳务派遣公司账务
  • 销售边角料的会计分录
  • jquery vue.js
  • python导入模块的语句
  • mysql查询或
  • 长期待摊费用是非流动资产吗
  • sqlsever注释符号
  • 固定资产到期后继续使用
  • 固定资产盘亏是什么意思
  • 有限合伙企业收入怎么做账
  • 企业存货明细表和盘点表
  • 土地出让金抵减增值税
  • 租金收入如何分红给股东
  • 农业开发公司的名称有哪些
  • 劳务费是否属于工资
  • 4s店销售走了该找谁
  • 赞助费入账需要多久
  • 工会经费能零申报保存不起
  • 发票抬头是个人税号怎么填
  • sql server的基本概念
  • windows任务管理器打不开
  • 英伟达更新有用吗
  • 离线方式快速安装在哪里
  • linux系统的安装与配置
  • 微软surface pro 3按键驱动
  • win7系统安装教程不用u盘
  • win10h2版本
  • centos删除vg
  • xp怎么改密码怎么设置
  • 怎么删除windows7
  • win10系统如何快速回到桌面
  • Win10 Build 10586.494稳定版更新修复内容以及KB3172985补丁下载地址
  • win10周年版
  • 如何解决win7系统中鼠标键盘不能用
  • win8使用技巧 图文
  • 透视投影的作用
  • js实现盒子移动
  • 可输入文字查找的软件
  • Android ListViewitem滑动出现删除按钮
  • js中eval函数是干嘛的
  • 怎么运用知识点
  • 土地增值税有哪些征收方式
  • 绵阳市十大纳税企业排名
  • 登录上海电子税务局单位社保查询不到当月未交的
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设