day53

参考:https://www.cnblogs.com/liwenzhou/p/8011504.html#autoid-2-3-8

事件

HTML 4.0 的新特性之一是有能力使 HTML 事件触发浏览器中的动作(action),比如当用户点击某个 HTML 元素时启动一段 JavaScript。下面是一个属性列表,这些属性可插入 HTML 标签来定义事件动作。

常用事件

onclick        当用户点击某个对象时调用的事件句柄。
ondblclick     当用户双击某个对象时调用的事件句柄。onfocus        元素获得焦点。               // 练习:输入框
onblur         元素失去焦点。               应用场景:用于表单验证,用户离开某个输入框时,代表已经输入完了,我们可以对它进行验证.
onchange       域的内容被改变。             应用场景:通常用于表单元素,当元素内容被改变时触发.(select联动)

 关于this

绑定方式:

方式一:

<div id="d1" οnclick="changeColor(this);">点我</div>
<script>function changeColor(ths) {ths.style.backgroundColor="green";}
</script>

注意:

this是实参,表示触发事件的当前元素。

函数定义过程中的ths为形参。

方式二:

<div id="d2">点我</div>
<script>var divEle2 = document.getElementById("d2");divEle2.οnclick=function () {this.innerText="呵呵"; } </script>

举例:

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><title>class相关操作</title><style>.c1 {height: 200px;width: 200px;border-radius: 50%;background-color: grey;}.c2 {background-color: yellow;}</style>
</head>
<body><!--点击执行change函数-->
<div class="c1 c2 c3" onclick="change(this);">div</div>
<div class="c1 c2 c3">div</div>
<div class="c1 c2 c3">div</div>
<div class="c1 c2 c3">div</div><script>function change(ths) {ths.classList.toggle("c2");//有c2去掉c2变灰,没有c2变黄
    }//    第二种绑定事件的方式,批量处理用第二种var divEles = document.getElementsByTagName("div"); //div标签有多个,找所有div标签for (var i=0;i<divEles.length;i++){divEles[i].onclick=function () {this.classList.toggle("c2");//指向被点标签
        }}
</script></body>
</html>

通过class名去改变样式,ths.classList.toggle("c2");

效果:

第一种方法处理比较繁琐,第二种方法可以批量处理某一类标签。

搜索框示例

onfocus、onblur

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><title>搜索框示例</title>
</head>
<body><input type="text" id="i1" value="对子哈特">
<input type="button" value="搜索"><script>// 找到input框var i1Ele = document.getElementById("i1");//找input
    i1Ele.onfocus=function () { //匿名函数// 把value清空this.value="";};i1Ele.onblur=function () {// 失去焦点之后把如果值为空就填回去if (!this.value.trim()){this.value="对子哈特";}}
</script></body>
</html>

效果:

输入框中写了默认值,若直接直接搜索则按默认值搜索,点击输入框则默认值消失。

06select联动示例

onchange

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8"><title>select联动示例</title>
</head>
<body><select id="s1"><option value="0">--请选择--</option><option value="1">北京</option><option value="2">上海</option>
</select><select id="s2"></select><script>var data = {1: ["昌平区", "朝阳区", "海淀区"], 2: ["静安区", "闵行区", "浦东区"]};// 给第一个select绑定事件,绑定的是onchange事件var s1Ele = document.getElementById("s1");//获得id s1的值
    s1Ele.onchange = function () {// 取到你选的是哪一个市
        console.log(this.value); //获得s1的值// 把对应市的区填到第二个select框里面var areas = data[this.value];  // 取到市对应的区 对应寻找// 找到s2var s2Ele = document.getElementById("s2");// 清空之前的
        s2Ele.innerHTML="";//这种方式清除// 生成option标签for (var i = 0; i < areas.length; i++) {var opEle = document.createElement("option");//生成option元素
            opEle.innerText = areas[i];// 添加到select内部
            s2Ele.appendChild(opEle);}}
</script>
</body>
</html>

效果:

选择了s1中的内容,马上在s2中跳出对应于s1的选项内容。

事件
                1. 常用事件
                    1. onclick
                    2. ondbclick
                    
                    3. onfocus
                    4. onblur
                    
                    5.onchange
                    
                2. 绑定事件的方式
                    1. 在标签里直接写属性(οnclick=foo())
                    2. 通过JS给标签绑定事件
            
                3. this --> 代表的是触发事件的当前标签

转载于:https://www.cnblogs.com/112358nizhipeng/p/10210393.html

JavaScript基础事件(6)相关推荐

  1. JavaScript基础14-day16【事件委派、事件绑定、事件传播、滚轮事件、键盘事件、键盘移动div】

    学习地址: 谷粒学院--尚硅谷 哔哩哔哩网站--尚硅谷最新版JavaScript基础全套教程完整版(140集实战教学,JS从入门到精通) JavaScript基础.高级学习笔记汇总表[尚硅谷最新版Ja ...

  2. JavaScript基础13-day15【DOM增删改、DOM添加删除记录、操作内联样式、获取元素的样式、DOM Element 对象、滚动条练习、事件对象、div跟随鼠标移动、事件冒泡】

    学习地址: 谷粒学院--尚硅谷 哔哩哔哩网站--尚硅谷最新版JavaScript基础全套教程完整版(140集实战教学,JS从入门到精通) JavaScript基础.高级学习笔记汇总表[尚硅谷最新版Ja ...

  3. JavaScript基础11-day13【正则表达式(量词、语法、转义字符、元字符)、DOM(节点、事件)、图片切换】

    学习地址: 谷粒学院--尚硅谷 哔哩哔哩网站--尚硅谷最新版JavaScript基础全套教程完整版(140集实战教学,JS从入门到精通) JavaScript基础.高级学习笔记汇总表[尚硅谷最新版Ja ...

  4. Web前端基础---JavaScript函数事件及其绑定DOM模型BOM模型

    Day03 JavaScript JavaScript是一种属于网络的高级脚本语言,被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用 户提供更流畅美观的浏览效果.通常JavaScri ...

  5. 【JavaScript】鼠标、键盘的基础事件

    鼠标键盘的基础事件: 鼠标事件 事件类型 点击左键 click 鼠标经过 mouseover 鼠标离开 mouseout 获得鼠标焦点 focus 失去鼠标焦点 blur 鼠标移动 mousemove ...

  6. JavaScript基础学习--事件代理

    一.JavaScript原生事件代理 var item = document.getElementById('item'); item.onclick(function(ev) {var ev = e ...

  7. Javascript基础与面向对象基础~第六讲 Javascript中的事件机制

    回到目录 事件机制,在JS中感觉很容易让人接受,一个鼠标被按下时会发生一些事情,一个键盘的键被抬起时同样可以发生一些事情,这种比喻很容易让人接受,不是吗,呵呵. 下面我将JS中几个主要的事件说一下,然 ...

  8. Web基础——JavaScript之事件绑定与事件对象

    目录 1.事件的绑定 2.事件的绑定(注意事项) 3.失去焦点和获得焦点 4.键盘事件 5.鼠标事件 6.表单事件 7.页面加载事件 8.下拉框事件 9.事件对象 10.currentTarget和t ...

  9. JavaScript基础笔记集合(转)

    JavaScript基础笔记集合 JavaScript基础笔记集合   js简介 js是脚本语言.浏览器是逐行的读取代码,而传统编程会在执行前进行编译   js存放的位置 html脚本必须放在< ...

最新文章

  1. 模式的学习笔记----转摘自把爱好作为自己工作的人
  2. OSMboxPost()
  3. 定制一个winCE5.0操作系统
  4. [转载]Qt之模型/视图(实时更新数据)_vortex_新浪博客
  5. php arcsin函数,三角函数计算器
  6. Java 高并发编程详解:多线程与架构设计
  7. HTTP - 长连接/短连接 - 学习/实践
  8. C | 使用C语言读取.mat文件
  9. 如何将iPad用作Mac的第二屏幕
  10. 嘘,这份0项目经验应对面试的独门秘籍,千万别被你的面试官发现~
  11. LeetCode-1873. 计算特殊奖金
  12. 机器学习LDA-基础Julia与Python的实现
  13. 军民链智合创:BitCEO.world比特维度全球CEO发展大会@台北HiFi++
  14. 随机画五角星,空心五角星
  15. Docker Desktop for Windows 安装过程整理
  16. 恒等于符号html编码,latex中恒等于号≡怎么打?
  17. Windows系统下VS2013+caffe的安装
  18. 系统集成项目管理工程师(软考中级)—— 第二十三章 风险管理 笔记分享
  19. 花生棒虚拟服务器,花生棒(公网版)搭建FTP服务器
  20. python用于pmc排产可以吗_PMC生产计划为何实施难?答案在这里!

热门文章

  1. amd 深度学习模型部署_Web服务部署深度学习模型-续集
  2. Oracle中限定日期,Oracle 日期的一些简单使用
  3. php企业号自定义菜单,用php实现微信企业号自定义菜单遇到问题,请大神指点!...
  4. java保存图片进度条_Java上传文件进度条的实现方法(附demo源码下载)
  5. VUE之监听属性 watch
  6. 网络请求中的cookie与set-Cookie的交互模式和作用
  7. wait(),notify(),notifyAll()进行了详细的分析介绍
  8. python代码学习-数据处理图片加遮挡、噪声、模糊
  9. Scala入门到精通——第十九节 隐式转换与隐式参数(二)
  10. 把MySQL中的各种锁及其原理都画出来