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 相关文章推荐
Ext对基本类型的扩展 ext,extjs,format
Dec 25 Javascript
基于jquery的可多选的下拉列表框
Jul 20 Javascript
动态的改变IFrame的高度实现IFrame自动伸展适应高度
Dec 28 Javascript
jQuery制作的别致导航有阴影背景高亮模式窗口
Apr 15 Javascript
js获取域名的方法
Jan 27 Javascript
jQuery实现向下滑出的二级菜单效果实例
Aug 22 Javascript
jQuery实现的点赞随机数字显示动画效果(附在线演示与demo源码下载)
Dec 31 Javascript
Angularjs上传文件组件flowjs功能
Aug 07 Javascript
深入理解Vue父子组件生命周期执行顺序及钩子函数
Aug 12 Javascript
vue中的计算属性实例详解
Sep 19 Javascript
微信小程序新手教程之启动页的重要性
Mar 03 Javascript
vue element-ui el-date-picker限制选择时间为当天之前的代码
Nov 07 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
ini_set的用法介绍
2014/01/07 PHP
php实现cookie加密的方法
2015/03/10 PHP
PHP内置加密函数详解
2016/11/20 PHP
jquery中交替点击事件toggle方法的使用示例
2013/12/08 Javascript
jquery zTree异步加载简单实例讲解
2016/02/25 Javascript
JavaScript中各种引用类型的常用操作方法小结
2016/05/05 Javascript
Jquery 自定义事件实现发布/订阅的简单实例
2016/06/12 Javascript
Javascript 事件冒泡机制详细介绍
2016/10/10 Javascript
ajax前台后台跨域请求处理方式
2018/02/08 Javascript
详解vue-cli项目中的proxyTable跨域问题小结
2018/02/09 Javascript
Vue-cropper 图片裁剪的基本原理及思路讲解
2018/04/17 Javascript
微信小程序学习笔记之获取位置信息操作图文详解
2019/03/29 Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
2019/10/28 Javascript
[02:16]卖萌的僵尸 DOTA2神话信使飞僵小宝来袭
2014/03/24 DOTA
python采用requests库模拟登录和抓取数据的简单示例
2014/07/05 Python
Python中functools模块的常用函数解析
2016/06/30 Python
用python实现将数组元素按从小到大的顺序排列方法
2018/07/02 Python
Python实现爬取马云的微博功能示例
2019/02/16 Python
python操作文件的参数整理
2019/06/11 Python
django基于cors解决跨域请求问题详解
2019/08/06 Python
使用Python画出小人发射爱心的代码
2019/11/23 Python
python pip安装包出现:Failed building wheel for xxx错误的解决
2019/12/25 Python
python多维数组分位数的求取方式
2020/03/03 Python
解决python中显示图片的plt.imshow plt.show()内存泄漏问题
2020/04/24 Python
Python手动或自动协程操作方法解析
2020/06/22 Python
sqlalchemy实现时间列自动更新教程
2020/09/02 Python
HTML5 history新特性pushState、replaceState及两者的区别
2015/12/26 HTML / CSS
运动鞋、足球鞋和慕尼黑球衣:Sport Münzinger
2019/08/26 全球购物
青蓝工程实施方案
2014/03/27 职场文书
党员批评与自我批评发言稿
2014/10/14 职场文书
2014年助理工程师工作总结
2014/11/14 职场文书
佛光寺导游词
2015/02/10 职场文书
2015年重阳节活动总结
2015/03/24 职场文书
警示教育片观后感
2015/06/17 职场文书
品牌形象定位,全面分析
2019/07/23 职场文书
商业计划书之服装
2019/09/09 职场文书