js事件源window.event.srcElement兼容性写法(详解)


Posted in Javascript onNovember 25, 2016

如下所示:

<html>
<body>
<p>一个好处就是 我想让body(或其他元素内)的某些对象响应事件 就不用挨个儿去写
只要在外层上写一个 然后检查event.srcElement.tagName或其他属性是不是你想要的来决定是否响应事件就可以了.不过好像event.srcElement在ff里不起作用 </p>
<p>比如</p>
<p>
<input value="input">
<br>
<span>span</span></p>
<div>div</div>

<p>event对象指当前触发的事件对象,  window.event.srcElement是指触发事件的对象。比如你设定document.onclick  
=  myfunc;这时所有页面点击的事件都交给myfunc处理,在myfunc函数里可以写vSrc  =  window.event.srcElement,
知道用户是点击了什么地方,做相应处理。  
你找个HTML文件,在其中加上这么一段:</p>
<p>
<textarea rows="10" cols="90">
  <script  languange  =  "javascript">  
document.onclick  =  myfunc;  
 
</script> 
</textarea>  
<script  languange  =  "javascript">  
document.onclick  =  myfunc;  
function myfunc()
{
var evt=getEvent();
var element=evt.srcElement || evt.target;
alert(element.tagName)
}
//在 ie中处理事件直接使用window.event对象即可,但在firefox中,是没有 window.event对象的,函数需要使用事件的时候,
//需要在事件发生时把事件作为参数传递给函数,不象在ie中,事件对象是全局的,随处都可以访 问.下面这个getEvent()函数可以兼容firefox和ie,
//只需要在访问事件对象的函数的开始调用getEvent()即可,不用再把事件作为 参数传递.以下代码已经实验通过! 
function getEvent()
{
if(document.all)
{
return window.event;//如果是ie
}
func=getEvent.caller;
while(func!=null)
{
var arg0=func.arguments[0];
if(arg0)
{
if((arg0.constructor==Event || arg0.constructor ==MouseEvent)
||(typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation))
{
return arg0;
}
}
func=func.caller;
}
return null;
}  
</script>
</p>
<p>试试就知道了。 <a href=#>void(0)是一个不做任何事的函数。</a>
</p>
</body>

 </html>

以上这篇js事件源window.event.srcElement兼容性写法(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery 弹出层注册页面等(asp.net后台)
Jun 17 Javascript
JavaScript Title、alt提示(Tips)实现源码解读
Dec 12 Javascript
javascript实现自动输出文本(打字特效)
Aug 27 Javascript
JavaScript计算器网页版实现代码分享
Jul 15 Javascript
JavaScript表单验证开发
Nov 23 Javascript
BootStrap的select2既可以查询又可以输入的实现代码
Feb 17 Javascript
基于JavaScript实现验证码功能
Apr 01 Javascript
基于JS实现带动画效果的流程进度条
Jun 01 Javascript
vue实现的仿淘宝购物车功能详解
Jan 27 Javascript
微信小程序实现单选选项卡切换效果
Jun 19 Javascript
Vue中util的工具函数实例详解
Jul 08 Javascript
vuex + keep-alive实现tab标签页面缓存功能
Oct 17 Javascript
使用JS读取XML文件的方法
Nov 25 #Javascript
JS比较两个数值的大小实例
Nov 25 #Javascript
使用JavaScript解决网页图片拉伸问题(推荐)
Nov 25 #Javascript
js移动焦点到最后位置的简单方法
Nov 25 #Javascript
详解JS几种变量交换方式以及性能分析对比
Nov 25 #Javascript
深入浅析Vue组件开发
Nov 25 #Javascript
javascript中href和replace的比较(详解)
Nov 25 #Javascript
You might like
php批量缩放图片的代码[ini参数控制]
2011/02/11 PHP
php类中private属性继承问题分析
2012/11/01 PHP
PHP include任意文件或URL介绍
2014/04/29 PHP
由JavaScript技术实现的web小游戏(不含网游)
2010/06/12 Javascript
基于MooTools的很有创意的滚动条时钟动画
2010/11/14 Javascript
JS模拟自动点击的简单实例
2013/08/08 Javascript
使用jQuery管理选择结果
2015/01/20 Javascript
jQuery的remove()方法使用详解
2015/08/11 Javascript
jQuery实现切换页面过渡动画效果
2015/10/29 Javascript
javascript获取网页各种高宽及位置的方法总结
2016/07/27 Javascript
AngularJS中过滤器的使用与自定义实例代码
2016/09/17 Javascript
Javascript中常用的检测方法小结
2016/10/08 Javascript
微信 java 实现js-sdk 图片上传下载完整流程
2016/10/21 Javascript
js中的DOM模拟购物车功能
2017/03/22 Javascript
jquery实现异步加载图片(懒加载图片一种方式)
2017/04/24 jQuery
Angular2中select用法之设置默认值与事件详解
2017/05/07 Javascript
Bootstrap-table自定义可编辑每页显示记录数
2018/09/07 Javascript
详解微信小程序缓存--缓存时效性
2019/05/02 Javascript
JavaScript实现的联动菜单特效示例
2019/07/08 Javascript
Layui 动态禁止select下拉的例子
2019/09/03 Javascript
JavaScript数值类型知识汇总
2019/11/17 Javascript
python实现逆波兰计算表达式实例详解
2015/05/06 Python
朴素贝叶斯Python实例及解析
2018/11/19 Python
将pip源更换到国内镜像的详细步骤
2019/04/07 Python
django中使用事务及接入支付宝支付功能
2019/09/15 Python
numpy实现神经网络反向传播算法的步骤
2019/12/24 Python
python各层级目录下import方法代码实例
2020/01/20 Python
Python中remove漏删和索引越界问题的解决
2020/03/18 Python
使用Python通过oBIX协议访问Niagara数据的示例
2020/12/04 Python
一款CSS3实现多功能下拉菜单(带分享按)的教程
2014/11/05 HTML / CSS
美国益智玩具购物网站:Fat Brain Toys
2017/11/03 全球购物
莱德杯高尔夫欧洲官方商店:Ryder Cup Shop
2019/08/14 全球购物
外贸销售员求职的自我评价
2013/11/23 职场文书
初三政治教学反思
2014/01/30 职场文书
百日安全生产活动总结
2014/07/05 职场文书
县政府办公室领导班子对照检查材料思想汇报
2014/09/28 职场文书