仅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 相关文章推荐
关于viewport,Ext.panel和Ext.form.panel的关系
May 07 Javascript
jquery实现文本框鼠标右击无效以及不能输入的代码
Nov 05 Javascript
自己使用js/jquery写的一个定制对话框控件
May 02 Javascript
node.js中的fs.appendFile方法使用说明
Dec 17 Javascript
javascript下拉列表菜单的实现方法
Nov 18 Javascript
Angular中支持SCSS的方法
Nov 18 Javascript
仿vue-cli搭建属于自己的脚手架的方法步骤
Apr 17 Javascript
echarts统计x轴区间的数值实例代码详解
Jul 07 Javascript
layui 上传图片 返回图片地址的方法
Sep 26 Javascript
vue实现短信验证码登录功能(流程详解)
Dec 10 Javascript
vue递归获取父元素的元素实例
Aug 07 Javascript
Vue多选列表组件深入详解
Mar 02 Vue.js
各浏览器对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
图片存储与浏览一例(Linux+Apache+PHP+MySQL)
2006/10/09 PHP
IIS6.0+PHP5.x+MySQL5.x+Zend3.0x+GD+phpMyAdmin2.8x通用安装实例(已经完成)
2006/12/06 PHP
wiki-shan写的php在线加密的解密程序
2008/09/07 PHP
PHP JSON格式数据交互实例代码详解
2011/01/13 PHP
PHP读取txt文件的内容并赋值给数组的代码
2011/11/03 PHP
学习php设计模式 php实现抽象工厂模式
2015/12/07 PHP
Laravel 数据库加密及数据库表前缀配置方法
2019/10/10 PHP
Jquery和JS用外部变量获取Ajax返回的参数值的方法实例(超简单)
2013/06/17 Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
2014/01/02 Javascript
JavaScript中操作字符串小结
2015/05/04 Javascript
JavaScript 数组中最大最小值
2016/06/05 Javascript
如何使用Vuex+Vue.js构建单页应用
2016/10/27 Javascript
jquery ajax后台返回list,前台用jquery遍历list的实现
2016/10/30 Javascript
jquery pagination插件动态分页实例(Bootstrap分页)
2016/12/23 Javascript
详解vue项目优化之按需加载组件-使用webpack require.ensure
2017/06/13 Javascript
React Native如何消除启动时白屏的方法
2017/08/08 Javascript
vue使用laydate时间插件的方法
2018/11/14 Javascript
node.js学习笔记之koa框架和简单爬虫练习
2018/12/13 Javascript
微信小程序使用Vant Weapp组件库的方法步骤
2019/08/01 Javascript
jQuery实现全选、反选和不选功能的方法详解
2019/12/04 jQuery
JS寄快递地址智能解析的实现代码
2020/07/16 Javascript
[49:54]Ti4 循环赛第三日 LGD vs Titan
2014/07/12 DOTA
Python遍历zip文件输出名称时出现乱码问题的解决方法
2015/04/08 Python
Python实现的tcp端口检测操作示例
2018/07/24 Python
python opencv根据颜色进行目标检测的方法示例
2020/01/15 Python
如何定义TensorFlow输入节点
2020/01/23 Python
PyCharm常用配置和常用插件(小结)
2021/02/06 Python
Linux Interview Questions For software testers
2012/06/02 面试题
大学毕业生工作的自我评价
2013/10/01 职场文书
中学校庆方案
2014/03/17 职场文书
《风筝》教学反思
2014/04/10 职场文书
我的中国梦演讲稿400字
2014/08/19 职场文书
韩语专业职业生涯规划范文:成功之路就在我们脚下
2014/09/11 职场文书
自主招生学校推荐信范文
2015/03/26 职场文书
电力工程合作意向书
2015/05/11 职场文书
基于Python实现将列表数据生成折线图
2022/03/23 Python