仅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 相关文章推荐
原生js写的放大镜效果
Aug 22 Javascript
js截取固定长度的中英文字符的简单实例
Nov 22 Javascript
javascript计算用户打开网页的停留时间
Jan 09 Javascript
JavaScript实现基于Cookie的存储类实例
Apr 10 Javascript
js实现3D图片逐张轮播幻灯片特效代码分享
Sep 09 Javascript
轻松学习jQuery插件EasyUI EasyUI创建CRUD应用
Nov 30 Javascript
JavaScript实现斗地主游戏的思路
Feb 29 Javascript
Jquery基础之事件操作详解
Jun 14 Javascript
JS控制层作圆周运动的方法
Jun 20 Javascript
遍历json获得数据的几种方法小结
Jan 21 Javascript
jQuery实现简单日期格式化功能示例
Sep 19 jQuery
详解Angular中通过$location获取地址栏的参数
Aug 02 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中使用X-SendFile头让文件下载更快
2014/06/01 PHP
2014年10个最佳的PHP图像操作库
2014/07/14 PHP
在laravel框架中实现封装公共方法全局调用
2019/10/14 PHP
js中的window.open返回object的错误的解决方法
2009/08/15 Javascript
jquery实用代码片段集合
2010/08/12 Javascript
JQuery设置和去除disabled属性的5种方法总结
2013/05/16 Javascript
JavaScript 和 Java 的区别浅析
2013/07/31 Javascript
Js判断参数(String,Array,Object)是否为undefined或者值为空
2013/11/04 Javascript
Node.js文件操作详解
2014/08/16 Javascript
基于jquery实现放大镜效果
2015/08/17 Javascript
input file样式修改以及图片预览删除功能详细概括(推荐)
2017/08/17 Javascript
Angular2里获取(input file)上传文件的内容的方法
2017/09/05 Javascript
vue的无缝滚动组件vue-seamless-scroll实例
2017/12/18 Javascript
vue判断input输入内容全是空格的方法
2018/03/02 Javascript
JavaScript如何对图片进行黑白化
2018/04/10 Javascript
elementUI select组件默认选中效果实现的方法
2019/03/25 Javascript
JS实现返回上一页并刷新页面的方法分析
2019/07/16 Javascript
Vue通过getAction的finally来最大程度避免影响主数据呈现问题
2020/04/24 Javascript
Vue实现摇一摇功能(兼容ios13.3以上)
2021/01/26 Vue.js
python实现的一只从百度开始不断搜索的小爬虫
2013/08/13 Python
Python中使用Flask、MongoDB搭建简易图片服务器
2015/02/04 Python
结合Python的SimpleHTTPServer源码来解析socket通信
2016/06/27 Python
Python算法应用实战之栈详解
2017/02/04 Python
Python 中urls.py:URL dispatcher(路由配置文件)详解
2017/03/24 Python
解决django无法访问本地static文件(js,css,img)网页里js,cs都加载不了
2020/04/07 Python
荷兰手表网站:Watch2Day
2018/07/02 全球购物
吉力贝官方网站:Jelly Belly
2019/03/11 全球购物
留学推荐信写作指南
2014/01/25 职场文书
2014年清明节网上祭英烈寄语
2014/04/09 职场文书
购房协议书
2014/04/11 职场文书
北京故宫的导游词
2015/01/31 职场文书
2015年服务员个人工作总结
2015/05/27 职场文书
长征观后感
2015/06/09 职场文书
预备党员表决心的话
2015/09/22 职场文书
SQL实现LeetCode(176.第二高薪水)
2021/08/04 MySQL
GoFrame gredis缓存DoVar Conn连接对象 自动序列化GoFrame gredisDo/DoVar方法Conn连接对象自动序列化/反序列化总结
2022/06/14 Golang