javascript event在FF和IE的兼容传参心得(绝对好用)


Posted in Javascript onJuly 10, 2014

event在IE和FF不兼容,今天传参碰到些问题,参考网上的一些方法,有所心得:

aClassArray[i].onmouseover = function () { //代码直接写在里面是可以的,要传参也可以传,只是不方便复用 };

aClassArray[i].onmouseover =linkMouseover//不传参的情况下是可以用的,但后续不能用 arguments.callee.caller.arguments[0]

aClassArray[i].onmouseover =linkMouseover()//加括号是错误用法

aClassArray[i].onmouseover = function () { linkMouseover(this) };//this能传进去,可以alert出来,但evt.clientX + "px"就出问题了,是空的。。。 arguments.callee.caller.arguments[0]//可以用这个解决

var src = evt.srcElement || evt.target; //后续还可以跟src

===========================================================================

附上练习代码

<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="css/ui-lightness/jquery-ui-1.10.4.custom.css" rel="external nofollow" />
<script src="js/jquery-1.10.2.js"></script>
<script src="js/jquery-ui-1.10.4.custom.js"></script>
<style type="text/css">
.aClass, .aClass:visited {
font-size: 36px;
text-decoration: none;
color: #0094ff;
}


.divTips {
font-size: 20px;
color: red;
border: #f00 1px solid;
position: absolute;
width: 100px;
height: 30px;
}
</style>
<script type="text/javascript">
function initOnOver() {
var titleTips = {
"baidu": "百度网站提示",
"163": "163网站提示",
"google": "google网站提示"
}
var aTag = document.getElementsByTagName("a");
var aClassArray = [];
for (var i = 0; i < aTag.length; i++) {
if (aTag[i].className == "aClass") {
aClassArray[aClassArray.length] = aTag[i];
}
}
for (var i = 0; i < aClassArray.length; i++) {
var e;
aClassArray[i].onmouseover = function () { linkMouseover() };
aClassArray[i].onmouseout = linkMouseout;
}
}
function linkMouseover() {
var divTips = document.createElement("div");
var evt = window.event || arguments.callee.caller.arguments[0]; // 获取event对象
divTips.className = "divTips";
divTips.style.left = evt.clientX + "px";//+px兼容FF
divTips.style.top = evt.clientY + "px";//+px兼容FF
divTips.innerHTML = "test";
document.getElementById("divA").appendChild(divTips);
}
function linkMouseout() {
var divTag = document.getElementsByTagName("div");
for (var i = 0; i < divTag.length; i++) {
if (divTag[i].className == "divTips") {
document.getElementById("divA").removeChild(divTag[i]);
}
}
}
window.onload = initOnOver;
</script>
</head>
<body>
<div id="divA">
<a href="http://www.baidu.com" rel="external nofollow" class="aClass">百度</a>
<br />
<br />
<br />
<a href="http://www.163.com" rel="external nofollow" class="aClass">网易</a>
<br />
<br />
<br />
<a href="http://www.google.com" rel="external nofollow" class="aClass">Google</a>
</div>
</body>
</html>
Javascript 相关文章推荐
JS中confirm,alert,prompt函数区别分析
Jan 17 Javascript
js获取某月的最后一天日期的简单实例
Jun 22 Javascript
node.js开发中使用Node Supervisor实现监测文件修改并自动重启应用
Nov 04 Javascript
js实现缓冲运动效果的方法
Apr 10 Javascript
详解JS正则replace的使用方法
Mar 06 Javascript
JS实现动态表格的添加,修改,删除功能(推荐)
Jun 15 Javascript
Js获取当前日期时间及格式化代码
Sep 17 Javascript
JS实现获取来自百度,Google,soso,sogou关键词的方法
Dec 21 Javascript
JavaScript 数据类型详解
Mar 13 Javascript
详解微信小程序input标签正则初体验
Aug 18 Javascript
微信小程序-API接口安全详解
Jul 16 Javascript
vue中 数字相加为字串转化为数值的例子
Nov 07 Javascript
js确认删除对话框适用于a标签及submit
Jul 10 #Javascript
JQuery1.8 判断元素是否绑定事件的方法
Jul 10 #Javascript
jquery实现类似EasyUI的页面布局可改变左右的宽度
Sep 12 #Javascript
借助JavaScript脚本判断浏览器Flash Player信息的方法
Jul 09 #Javascript
jQuery获取选中内容及设置元素属性的方法
Jul 09 #Javascript
js数组与字符串的相互转换方法
Jul 09 #Javascript
在Linux上用forever实现Node.js项目自启动
Jul 09 #Javascript
You might like
PHP对MongoDB[NoSQL]数据库的操作
2013/03/01 PHP
PHP 数据结构队列(SplQueue)和优先队列(SplPriorityQueue)简单使用实例
2015/05/12 PHP
kindeditor 加入七牛云上传的实例讲解
2017/11/12 PHP
php中钩子(hook)的原理与简单应用demo示例
2019/09/03 PHP
laravel实现于语言包的完美切换方法
2019/09/29 PHP
javascript 数组的方法集合
2008/06/05 Javascript
jQuery 对象中的类数组操作
2009/04/27 Javascript
js trim函数 去空格函数与正则集锦
2009/11/20 Javascript
利用JS延迟加载百度分享代码,提高网页速度
2013/07/01 Javascript
两个数组去重的JS代码
2013/12/04 Javascript
浅谈jquery回调函数callback的使用
2015/01/30 Javascript
JavaScript生成的动态下雨背景效果实现方法
2015/02/25 Javascript
jQuery满屏焦点图左右滚动特效代码分享
2015/09/07 Javascript
jQuery实现仿QQ空间装扮预览图片的鼠标提示效果代码
2015/10/30 Javascript
JS给swf传参数的实现方法
2016/09/13 Javascript
jQuery滚动监听实现商城楼梯式导航效果
2017/03/06 Javascript
如何更好的编写js async函数
2018/05/13 Javascript
JS与jQuery判断文本框还剩多少字符可以输入的方法
2018/09/01 jQuery
小程序实现自定义导航栏适配完美版
2019/04/02 Javascript
qrcode生成二维码微信长按无法识别问题的解决
2019/04/04 Javascript
自定义javascript验证框架示例【附源码下载】
2019/05/31 Javascript
如何使用50行javaScript代码实现简单版的call,apply,bind
2019/08/14 Javascript
利用pyinstaller将py文件打包为exe的方法
2018/05/14 Python
Django rest framework工具包简单用法示例
2018/07/20 Python
Python3 max()函数基础用法
2019/02/19 Python
python实现最小二乘法线性拟合
2019/07/19 Python
python爬虫爬取幽默笑话网站
2019/10/24 Python
pytorch+lstm实现的pos示例
2020/01/14 Python
Python爬虫requests库多种用法实例
2020/05/28 Python
Pycharm 2020.1 版配置优化的详细教程
2020/08/07 Python
python使用matplotlib的savefig保存时图片保存不完整的问题
2021/01/08 Python
html5的input的required使用中遇到的问题及解决方法
2018/04/24 HTML / CSS
印度购买眼镜和太阳镜网站:Coolwinks
2018/09/26 全球购物
介绍一下UNIX启动过程
2013/11/14 面试题
关于安全演讲稿
2014/05/09 职场文书
python-for x in range的用法(注意要点、细节)
2021/05/10 Python