7.3 HTML DOM Event(事件)

参考文档:https://www.cnblogs.com/yuanchenqi/articles/5980312.html

HTML DOM Event(事件)

onfocus  元素获得焦点。               //练习:输入框

onblur   元素失去焦点。               应用场景:用于表单验证,用户离开某个输入框时,代表已经输入完了,我们可以对它进行验证.

练习1:

获取焦点,当鼠标进入输入框,默认value清空(onfocus),当鼠标移出输入框,不改变输入框里面的value(onblur)。(两次判断,输入值为空格。鼠标再次进入输入框,输入值不要恢复成默认的)

源代码:

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>111</title>

</head>

<body>

<input type="text" id="search" value="请输入用户名" onfocus="f1()" onblur="f2()">

<script>

var ele=document.getElementById("search");

function f1(){

//var ele=document.getElementById("search");

if(ele.value=="请输入用户名"){

ele.value="";

}

}

function f2(){

if(!ele.value.trim())   //trim()表示去空

ele.value="请输入用户名";

}

</script>

</body>

</html>

onload         一张页面或一幅图像完成加载

练习2:默认script位于html最底层。通过onload可以经其放到最上面了。

源代码:

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>load事件</title>

<script>

function f(){

var ele=document.getElementsByClassName("div1")[0];

console.log(ele.innerHTML)

}

</script>

</head>

<body >

<div class="div1">hello hell</div>

</body>

</html>

Onclick   当用户点击某个对象时调用的事件句柄。

jQuery会自动帮我们去遍历数组,原生js不会。

实现父标签,兄弟标签的使用

源代码。

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>load事件</title>

</head>

<body>

<div class="v1">

<div class="v2">dddd</div>

<div class="v2">dddd</div>

<div class="v2">dddd</div>

<div class="v2">dddd</div>

<p id="p1" onclick="func(this)">pppp</p>

<!--this代指本标签-->

</div>

<script>

function func(aaa){

console.log(aaa)  //自身标签值

console.log(aaa.previousElementSibling) //上一个兄弟标签

console.log(aaa.parentNode) //父标签

}

</script>

</body>

</html>

汇总:

全局查找标签的方法

通过使用document.getElementsById()方法

通过使用document.getElementsByTagName()方法

通过使用document.getElementsByClassName("div1")[0]方法

通过使用document.getElementsByName()方法

局部查找标签的方法

通过使用element.getElementsByTagName()方法

通过使用element.getElementsByClassName方法

两种绑定事件。

源代码

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>绑定事件</title>

</head>

<body>

<p id="p1" onclick="func(this)">pppp</p>

<div>hello Div</div>

<script>

//绑定事件一

function func(www){

console.log(www);

alert(‘111...‘)

}

//绑定事件二

var ele=document.getElementsByTagName("div")[0]//默认以列表形式存储,取出第一个元素

ele.onclick=function(){

alert(‘222...‘)

}

</script>

</body>

</html>

wanc

原文地址:https://www.cnblogs.com/sunnyyangwang/p/11434276.html

时间: 2024-10-07 02:04:15

7.3 HTML DOM Event(事件)的相关文章

HTML DOM event 事件 (丫头, 好想你了)

HTML DOM event 事件, 用用就知道了 function isKeyPressed(eventssdasd)     // 这个地方其实无关紧要,就是定义一个名称而已, 不过为了好看, 最好还是写成 event{  if (event.altKey==1)                        // event代表事件的状态,例如触发event对象的元素.鼠标的位置及状态.按下的键等等,此处为检测 alt 键是否按下    {  // 此处的 event 必须写正确, 你可以

BOM DOM Event事件笔记....

js//获取文件标题 document.body //body document.title //网页标题 document.doctype//文档对象 document.url//路径 //服务器相关 //align document.domain//域名 //---操作文本节点--- //获取父节点 var arrayObj = document.getElementsByTagName('div'); for(var i = 0 in arrayObj){ alert(arrayObj[i

[DOM Event Learning] Section 2 概念梳理 什么是事件 DOM Event

[DOM Event Learning] Section 2 概念梳理 什么是事件 DOM Event 事件 事件(Event)是用来通知代码,一些有趣的事情发生了. 每一个Event都会被一个Event对象所表示,这个对象可能还会有一些自定义的字段或者方法,来获取发生什么事情的更多信息. Event对象实现了Event接口(https://developer.mozilla.org/en-US/docs/Web/API/Event). 事件可以是任何事情,从最基本的用户交互,到renderin

DOM 的事件对象(event)

在触发 DOM 上的某个事件时,会产生一个事件对象 event,这个对象中包含着所有与事件有关的 信息. event 事件对象的属性和方法 链接的默认行为就是在 被单击时会导航到其 href 特性指定的 URL.如果你想阻止链接导航这一默认行为,那么通过链接的 onclick 事件处理程序可以取消它 var link = document.getElementById("myLink"); link.onclick = function(event){ event.preventDef

[DOM Event Learning] Section 4 事件分发和DOM事件流

[DOM Event Learning] Section 4 事件分发和DOM事件流 事件分发机制: event dispatch mechanism. 事件流(event flow)描述了事件对象在数据结构中是如何传播的. 传播路径 事件对象(event objects)被分发给事件目标(event target),在分发开始的时候,在实现中必须先确定事件对象的传播路径. 这个传播路径必须是一个有序的list,其中包含了事件对象必须通过的事件目标. 对于DOM的实现来说,这个传播路径必须反映这

DOM Event:事件流动(Event Flow)

考虑这么个例子: <div> <button id="btn">Click Me!</button> </div> 哪怕一个web开发的初学者都会知道,当我们鼠标在button上点击时,会在button上触发一个click事件.但是: button是div的一个子Node:从界面上来看,在button里点击相当于在div里点击:那click事件也会触发在div上吗? 如果click事件也触发在div上,那它们会不会共用同一个事件对象? 如

HTML DOM Event对象

我们通常把HTML DOM Event对象叫做Event事件 事件驱动模型 事件源:(触发事件的元素)事件源对象是指event对象 其封装了与事件相关的详细信息. 当事件发生时,只能在事件函数内部访问的对象 处理函数结束后会自动销毁 事件流:当页面元素触发事件的时候, 该元素的容器以及整个页面都会按照特定的顺序响应该元素的触发事件 事件传播的顺序叫做事件流. 事件分类:鼠标事件,键盘事件,表单事件,页面事件 我这里主要列举鼠标事件的: 1.鼠标事件: var btnNum = event.but

整理之DOM事件阶段、冒泡与捕获、事件委托、ie事件和dom模型事件、鼠标事件

整理之DOM事件阶段 本文主要解决的问题: 事件流 DOM事件流的三个阶段 先理解流的概念 在现今的JavaScript中随处可见.比如说React中的单向数据流,Node中的流,又或是今天本文所讲的DOM事件流.都是流的一种生动体现.用术语说流是对输入输出设备的抽象.以程序的角度说,流是具有方向的数据. 事件流分事件冒泡与事件捕获 在浏览器发展的过程中,开发团队遇到了一个问题.那就是页面中的哪一部分拥有特定的事件? 可以想象画在一张纸上的一组同心圆,如果你把手指放在圆心上,那么你的手指指向的其

trigger()的event事件对象之坑

问题引入,先贴一段有问题的代码,如果你对 trigger()  这个函数了解不透彻,还真看不出这段代码错在哪.完成的功能是样式转换器,想让页面在加载后自行触发点击事件隐藏三个按钮,但是效果如图并没有隐藏按钮们:控制台会报错: target  属性是 undefined ,肯定是 event 这个事件对象没获取到的问题,程序到17行出错停止,这让我感到疑问:自定义触发的事件难道没有event对象吗?. 1 <div id="switcher" class="switche