仅Firefox中链接A无法实现模拟点击以触发其默认行为


Posted in Javascript onJuly 31, 2011

而标准的事件触发可以使用dispatchEvent方法。但现在FF5无法触发了A的默认行为了。如下

<!doctype html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>Firefox5链接A无法实现模拟点击bug</title> 
</head> 
<body> 
<a id="a1" href="http://mail.sina.com.cn">新浪邮箱</a> 
</body> 
<script type="text/javascript"> 
function dispatch(el, type){ 
try{ 
var evt = document.createEvent('Event'); 
evt.initEvent(type,true,true); 
el.dispatchEvent(evt); 
}catch(e){alert(e)}; 
} 
var a1 = document.getElementById('a1'); 
dispatch(a1, 'click'); 
</script> 
</html>

链接A,使用dispatchEvent模拟点击。测试在IE9/Safari/Chrome/Opera中均跳到了mail.sina.com.cn。唯独Firefox5没有跳过去。
由于Firefox5中给所有元素都添加了click方法(Firefox3没有),因此用click方法测试下
<a id="a1" href="http://mail.sina.com.cn">新浪邮箱</a> 
<script> 
var a1 = document.getElementById('a1'); 
a1.click(); 
</script>

测试还是没有跳到mail.sina.com.cn。
可见 Firefox中两种方式都不能使其触发链接A的默认行为。可能是Firefox安全机制禁止了客户端程序员模拟A跳转,呃..
注:貘用FF3测试效果同FF5。感谢..
Javascript 相关文章推荐
extjs 初始化checkboxgroup值的代码
Sep 21 Javascript
Javascript跨域请求的4种解决方式
Mar 17 Javascript
jQuery实现带延迟的二级tab切换下拉列表效果
Sep 01 Javascript
jquery验证邮箱格式并显示提交按钮
Nov 07 Javascript
深入探秘jquery瀑布流的实现
Jan 30 Javascript
整理关于Bootstrap模态弹出框的慕课笔记
Mar 29 Javascript
Textarea输入字数限制实例(兼容iOS&amp;安卓)
Jul 06 Javascript
vue中实现methods一个方法调用另外一个方法
Feb 08 Javascript
基于vue,vue-router, vuex及addRoutes进行权限控制问题
May 02 Javascript
JS引用传递与值传递的区别与用法分析
Jun 01 Javascript
在React项目中使用Eslint代码检查工具及常见问题
Oct 10 Javascript
Vue运用transition实现过渡动画
May 06 Javascript
各浏览器对click方法的支持差异小结
Jul 31 #Javascript
js中将HTMLCollection/NodeList/伪数组转换成数组的代码
Jul 31 #Javascript
对象无length属性时IE6/IE7中无法将其转换成伪数组(ArrayLike)
Jul 31 #Javascript
javascript中length属性的探索
Jul 31 #Javascript
javascript string字符串优化问题
Jul 31 #Javascript
超级有用的13个基于jQuery的内容滚动插件和教程
Jul 31 #Javascript
基于JQuery 的消息提示框效果代码
Jul 31 #Javascript
You might like
小偷PHP+Html+缓存
2006/12/20 PHP
在win7中搭建Linux+PHP 开发环境
2014/10/08 PHP
浅谈php(codeigniter)安全性注意事项
2017/04/06 PHP
IE8 中使用加速器(Activities)
2010/05/14 Javascript
JQuery触发事件例如click
2013/09/11 Javascript
如何解决Jquery库及其他库之间的$命名冲突
2013/09/15 Javascript
js编写trim()函数及正则表达式的运用
2013/10/24 Javascript
js获取select选中的option的text示例代码
2013/12/19 Javascript
一个简单的Node.js异步操作管理器分享
2014/04/29 Javascript
JavaScript实现列出数组中最长的连续数
2014/12/29 Javascript
angular.js之路由的选择方法
2016/09/24 Javascript
JS类的定义与使用方法深入探索
2016/11/26 Javascript
浅析Visual Studio Code断点调试Vue
2018/02/27 Javascript
关于NodeJS中的循环引用详解
2019/07/23 NodeJs
jquery 时间戳转日期过程详解
2019/10/12 jQuery
在vue中axios设置timeout超时的操作
2020/09/04 Javascript
[14:03]2017DOTA2亚洲邀请赛开幕式:12神兵演绎水墨中华
2017/04/01 DOTA
python中wx将图标显示在右下角的脚本代码
2013/03/08 Python
Python算法之图的遍历
2017/11/16 Python
Python实现矩阵相乘的三种方法小结
2018/07/26 Python
详解Python函数式编程—高阶函数
2019/03/29 Python
在Python中获取操作系统的进程信息
2019/08/27 Python
PyTorch 普通卷积和空洞卷积实例
2020/01/07 Python
解决pytorch报错:AssertionError: Invalid device id的问题
2020/01/10 Python
Python生成器常见问题及解决方案
2020/03/21 Python
Pytorch框架实现mnist手写库识别(与tensorflow对比)
2020/07/20 Python
Django 实现图片上传和下载功能
2020/12/31 Python
Bogner美国官网:滑雪服中的”Dior”
2018/01/30 全球购物
EJB面试题
2015/07/28 面试题
男方父母婚礼答谢词
2014/01/25 职场文书
社区母亲节活动方案
2014/03/05 职场文书
个人安全生产责任书
2014/07/28 职场文书
党性心得体会
2014/09/03 职场文书
纪念九一八爱国演讲稿600字
2014/09/14 职场文书
上帝也疯狂观后感
2015/06/09 职场文书
励志语录:只有自己足够强大,才能不被别人践踏
2020/01/09 职场文书