js监听多个事件_JavaScript中的事件与异常捕获解析

这篇文章主要给大家介绍了关于JavaScript中事件与异常捕获的相关资料,文中通过示例代码介绍的非常详细,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。

25a7c0e3c56c26f475b9621c3335dcdf.png

事件处理

【onClick】单击事件、【onMouseOver】鼠标经过事件、【onMouseOut】鼠标移出事件、【onChange】文本内容改变事件、【onSelect】文本被框选事件、【onFoucus】得到光标事件、【onBlur】光标失去事件、【onLoad】网页加载事件(在body标签中添加)、【onUnload】网页关闭事件(在body标签中添加或者使用window.οnlοad=function(){} )
事件注册及监听1、 DOM0级事件处理

在标签中添加onClick或其他事件的属性并赋值为JS的自定义方法名

HTML复制全屏
1
onClick="dongfun(20)"

两种方法在事件中得到事件的标签对象:

HTML复制全屏
1
<div id="divid" onMouseOver="overbut(this)" onMouseOut="outbut()">JavaScript</div>
2
<script>
3
//通过参数传递对象
4
function overbut(obj){
5
obj.innerHTML="事件触发发,鼠标在我的范围";
6
}
7
//通过ID查找到对象
8
function outbut(){
9
document.getElementById("divid").innerHTML="再见见";
10
}//
11
</script>

内容改变监听:
方法一

HTML复制全屏
1
<input onChange="this.style.backgroundColor='red'">

方法二

HTML复制全屏
1
<input id="inid" onChange="inputbut(this)">
2
<script>
3
function inputbut(obj){
4
obj.style.backgroundColor="green";//更改样式
5
}
6
</script>

2、 DOM1级事件处理
通过标签或者ID寻找到对象,进行事件监听,一个事件只能对应一个事件处理函数,在HTML中不用进行注册

HTML复制全屏
1
function dongfunx(){
2
alert("JavaScript弹框");
3
}
4
//找到对象
5
var h1objx=document.getElementsByTagName("h1")[0];
6
//注册事件
7
h1objx.οnclick=dongfunx;
8
//清除事件
9
h1objx.οnclick=null;

3、 DOM2级事件处理

通过标签或者ID寻找到对象,进行事件监听,一个事件只能对应多个事件处理函数,在HTML中不用进行注册

HTML复制全屏
1
//通过ID找到标签对象
2
divobjx=document.getElementById("divid");
3

4
//添加监听事件,可以添加多个相同或者不同的事件
5
//参数(事件名,处理函数名),其中事件名是普通事件中去掉“on”前缀
6
divobjx.addEventListener("click",onck1);
7
divobjx.addEventListener("click",onck2);
8

9
//事件处理函数
10
function onck1(){
11
alert("----- onck1 -----");
12
}
13
function onck2(){
14
alert("----- onck2 -----");
15
}//
16

17
//移除点击事件
18
divobjx.removeEventListener("click",onck1);

匿名方法实现

HTML复制全屏
1
divobjx=document.getElementById("divid");
2
divobjx.addEventListener("click",function(){
3
//执行操作内容
4
alert("----------");
5
});

补充:
阻止HTML的默认事件

HTML复制全屏
1
<a href="https://www.cnblogs.com/dongxiaodong/" rel="external nofollow" >跳转</a>
2
<script>
3
function dongfunx(eventx){
4
eventx.preventDefault();//阻止默认事件,不进行跳转
5
}
6
//找到对象
7
var aobjx=document.getElementsByTagName("a")[0];
8
//注册事件
9
aobjx.οnclick=dongfunx;
10
</script>

页面加载完毕监听:

HTML复制全屏
1
window.οnlοad=function(){
2
alert("页面加载完毕");
3
}//

异常捕获

如果程序执行时遇到异常且未进行异常捕获,则程序将终止执行,如果有异常捕获,则可以继续执行异常以下的代码。
捕获所有异常:

HTML复制全屏
1
try{
2
//alert(jj);//未定义变量异常
3
throw("JavaScript异常");//手动抛出异常,参数为异常内容
4
}catch(e){
5
alert("捕获的错误:"+e);
6
}

结语

想学前端的看我个性签名哦

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/292480.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#多线程开发-使用并发集合

前言大家好&#xff0c;我是阿辉。在C#语言中当需要处理并发的场景时&#xff0c;就需要程序员使用最合理的数据结构。那么哪些数据结构是支持和可以在并行计算中被使用的呢。首先这些数据结构具备可伸缩性&#xff0c;尽可能地避免锁(会造成多个线程的等待&#xff0c;防止资源…

windows 下安装wamp环境

一直以来都是学习在Linux下安装lanmp环境&#xff0c;在Windows下都是用的集成工具比如appserv现在来安装Windows版本的lamp都是从官网下载的资源在Windows下以后还会编辑更多的东西。我的文章都会以后都有更新&#xff0c;因为有时候有点想法&#xff0c;如果不实践的话会忘记…

应用环境下的TIME_WAIT和CLOSE_WAIT

转载自&#xff1a;http://blog.csdn.net/shootyou/article/details/6622226 昨天解决了一个HttpClient调用错误导致的服务器异常&#xff0c;具体过程如下&#xff1a;http://blog.csdn.net/shootyou/article/details/6615051里头的分析过程有提到&#xff0c;通过查看服务器网…

当社恐和社恐相亲时,场面会有多尴尬?

1 俄国人真实在&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼2 alone和lonely的区别&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼3 她可能怕她男朋友伤害到别人&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼4 真正的笋到家了&#xff08;…

FlexPod上安装vSphere 5.5配置中的排错(1)

delxu原创文档&#xff0c;转发请一定要标记本文出处和原文URL。 这些日子在进行FlexPod上的vSphere 5.5的安装和配置&#xff0c;过程中遇到一些故障、困难&#xff0c;都一一解决了。觉得有必要和大家分享一下。可能会有好多篇&#xff0c;也可能和以前一样&#xff0c;虎头蛇…

Android插件化开发之动态加载三个关键问题详解

本文摘选自任玉刚著《Android开发艺术探索》&#xff0c;介绍了Android插件化技术的原理和三个关键问题&#xff0c;并给出了作者自己发起的开源插件化框架。 动态加载技术&#xff08;也叫插件化技术&#xff09;在技术驱动型的公司中扮演着相当重要的角色&#xff0c;当项目越…

更方便地模拟 Http 响应

更方便地 Mock Http ResponseIntro在我们的业务代码中往往会有很多调用内部其他 team 或者是第三方的一些服务&#xff0c;在编写单元测试代码时&#xff0c;往往需要 Mock Http Response 来模拟更好可能的返回结果&#xff0c;我封装了一个简单的 Http Handler 来简化 Mock 过…

男人的快乐可以多简单?

1 说不出哪里像但是非常像&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼2 质量不错&#xff0c;就是风大不建议穿&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼3 谈恋爱的要求&#xff08;素材来源网络&#xff0c;侵删&#xff09;▼4 当给狗狗看了捕…

Android插件化开发之用DexClassLoader加载未安装的APK资源文件来实现app切换背景皮肤

第一步、先制做一个有我们需要的图片资源的APK 如下图&#xff0c;这里有个about_log.png,我们需要生成apk文件。生成的apk文件如果你不到项目的文件夹里面去取apk&#xff0c;想通过命令放到手机里面去可以快速用下面命令 1&#xff09;、在手机里面通过包名找到apk路径&…

ManualResetEvent实现线程的暂停与恢复

背景前些天遇到一个需求&#xff0c;在没有第三方源码的情况下&#xff0c;刷新一个第三方UI&#xff0c;并且拦截到其ajax请求的返回结果。当结果为AVALIABLE的时候&#xff0c;停止刷新并语音提示&#xff0c;否则继续刷新。分析这个需求&#xff0c;发现需要控制一个刷新循环…

浙大哈佛剑桥学者联手破解数学界几十年的谜题,成果登上数学顶刊

全世界只有3.14 % 的人关注了爆炸吧知识转自&#xff1a;量子位作者&#xff1a;边策 萧箫当两个看似“无关”的数学领域发生碰撞&#xff0c;会发生什么&#xff1f;浙江大学研究员、中科大数学系2003级校友叶和溪&#xff0c;与来自剑桥大学、哈佛大学的两位学者一起&#xf…

Hibernate 参数设置一览表

Hibernate 参数设置一览表属性名用途hibernate.dialect一个Hibernate Dialect类名允许Hibernate针对特定的关系数据库生成优化的SQL. 取值 full.classname.of.Dialect hibernate.show_sql输出所有SQL语句到控制台. 有一个另外的选择是把org.hibernate.SQL这个log category设为d…

jsp将鼠标放到那显示信息

将下面的代码&#xff0c;粘贴复制到jsp<body></body>中<A href"#" οnmοuseοver"document.getElementById(aaa).style.display" οnmοuseοut"document.getElementById(aaa).style.displaynone">鼠标移动到这我就出来了&l…

Monkey测试实例

Monkey是Android中的一个命令行工具&#xff0c;可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等)&#xff0c;实现对正在开发的应用程序进行压力测试。Monkey测试是一种为了测试软件的稳定性、健壮性的快速有效的方法。1…

.NET Core Runtime vs .NET Framework Runtime

在我从 .NET Framework 到 .NET Core 的过渡期间&#xff0c;有一件事情让我很长时间都感到困惑&#xff0c;那就是 Runtime 运行时&#xff0c; 实际上 Runtime 在 .NET Framework 和 .NET Core 中具有不同的含义。.NET Framework 运行时的历史 当有人问我们&#xff0c;什么是…

“玻璃大王”曹德旺捐资100亿办大学!幼年失学的他要打造理工科研究型大学...

全世界只有3.14 % 的人关注了爆炸吧知识本文转自募格学术整理自&#xff1a;量子位&#xff08;作者贾浩楠、鱼羊&#xff09;、青塔等100亿投资&#xff0c;福建省迎来第一个“新型大学”。办学资金&#xff0c;来自生长于福建&#xff0c;在福建发家致富的“玻璃大王”曹德旺…

JAVA配置Tomcat

1.下载tomcat&#xff0c;我jdk是1.8的&#xff0c;网上查了一下&#xff0c;说要安装tomcat8及以上的tomcat 尝试点击&#xff0c;弹出&#xff0c; 2.配置环境 3.安装通过cmd安装 4.点击开启服务 5.输入localhost:8080查看 6.还可以通过tomcat8w.exe来启动窗口&#xff0c;开…

女孩看男孩VS男孩看女孩

1 这波猫粮我吃了&#xff01;2 论一只狗子的自娱自乐精神&#xff01;3 分享一个 “想死你了”的拥抱&#xff01;4 老师&#xff1a;下课铃不代表这节课上完了5 谁怕谁啊&#xff01;6 好像很有道理的样子7 将它们展开会是什么&#xff1f;你点的每个赞&#xff0c;我都认真当…

使用建造者模式创建模拟数据

前言在写测试用例时&#xff0c;我们经常需要创建模拟数据&#xff0c;在C#中常用的方式是使用nuget包Bogus。Bogus可以按照一定规则生成随机数据&#xff0c;示例代码如下&#xff1a;public class User {public string Name { get; set; }public int Age { get; set; }public…