a标签点击事件_事件类型

事件类型(onload)


选择练习 1

DOM中的哪个事件会在网页中的所有元素(文本、图像、CSS样式等)加载完后才触发执行?(选择一项)

A onloadB onclickC onmouseoverD onblur

正确答案:A
参考解析:
该题考察的是DOM的onload事件,正确选项为A;onload事件是在网页中的元素(图片、外部关联文件等)都完全加载到浏览器之后才执行。
B:onclick是在点击的时候触发。
C:onmouseover 事件会在鼠标指针移动到指定的元素上时发生。
D:onblur事件是失去焦点时触发。

选择练习 2

观察下面的代码,选项中说法正确的是?(选择两项)

<html><head lang="en"><meta charset="UTF-8"><title>onloadtitle><script type="text/javascript">  var btn=document.getElementById("btn");  btn.onclick=function(){    alert("hello");  }script>head><body>  <input type="button" value="按钮" id="btn" />body>html>

A 页面打开时会弹出“helloB 点击按钮,会弹出“hello”C 系统报错,设置的onclick事件为空D 页面要顺利执行脚本弹出“hello”,需加上onload事件

正确答案:C,D
参考解析:
该题考察的是DOM的onload事件,正确选项为CD;
onload事件是在网页中的元素(图片、外部关联文件等)都完全加载到浏览器之后才执行。题干代码中,当浏览器读到脚本时,body中的元素还未解析,所以找不到对应的DOM元素,所以系统会报错,需要给他加上onload事件即可。

事件类型(onfocus和onblur)


onfocus事件用于:

  • input标签type为text、password

  • textarea标签


选择练习 1

关于onfocus和onblur事件下列说法正确的是?(选择两项)

A onfocus和onblur事件常用在表单元素中B onfocus事件是失去焦点时触发C onblur事件是获得焦点时触发D onfocus事件是获得焦点时触发

正确答案:A,D
参考解析:
该题考察的是onfocus和onblur事件,正确选项为AD;
这两个事件常和表单配合使用,onfocus事件是获得焦点时触发,onblur事件是失去焦点时触发。


选择练习 2

想要判断当输入框失去焦点时的状态,使用下列哪个事件?(选择一项)

A onfocusB onblurC onclickD onmouseover

正确答案:B
参考解析:
该题考察的是onblur事件,正确选项为B;onblur事件是失去焦点时触发的;
A:onfocus是获得焦点事件。
C:onclick是单击事件。
D:onmouseover是鼠标经过事件。


编程练习

小伙伴们,根据效果图,实现下列功能:

(1) 当输入框获得焦点:
如果输入框值为空,提示“请输入您的姓名”

(2) 当输入框失去焦点:
如果输入框值为空,提示“用户名不能为空”,并且边框颜色变为红色
如果输入框值不为空,那么没有提示文字,边框颜色是默认颜色

效果图如下:06ee62ce1219cdfcf2c0b3906af0aade.png

任务

第一步:通过元素名获取dom对象的方式,得到输入框对象以及放置提示文字的元素对象,并用变量进行接收

第二步:给输入框绑定获得焦点事件,当输入框获得焦点时,判断:

如果值为空,输入框后出现提示文字“请输入您的姓名”

第三步:给输入框绑定失去焦点事件,当输入框获得焦点时,判断:

(1)如果值为空,输入框后出现提示文字“用户名不能为空”,并且将样式表中的边框样式添加给输入框

(2)如果值不为空,输入框后的提示文字消失,之前加上的样式也要去掉

参考代码
<html><head><meta charset="UTF-8"><title>onblur和onfocustitle><style type="text/css">    .red{      border:1px solid red;    }style>head><body>  姓名:<input type="text"><span>span><script type="text/javascript">  var input=document.getElementsByTagName("input")[0];  var span=document.getElementsByTagName("span")[0];  input.onfocus=function(){    span.innerHTML="  请输入您的姓名";  }  input.onblur=function(){    if(this.value==""){      this.className="red";      span.innerHTML="  用户名不能为空";    } else{      this.removeAttribute("class");      span.innerHTML="";    }  }script>body>html>

d72d5053f8b07ec0f0f5df82167b2060.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值