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

时间:2023-06-27 23:29:02 

而标准的事件触发可以使用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。感谢..

标签:模拟点击
0
投稿

猜你喜欢

  • sql server 视图作用

    2009-01-05 13:53:00
  • sqlserver清空service broker中的队列的语句分享

    2011-09-30 11:33:35
  • 在asp中调用sql server的存储过程方法

    2007-08-13 13:28:00
  • 超长文章的智能分页-支持HTML

    2008-03-20 13:21:00
  • 通过事务日志解决SQL Server常见四大故障(二)

    2009-03-25 13:51:00
  • Linux mysql安装修改root密码服务

    2010-10-14 13:59:00
  • ASP使用连接MYSQL数据库全攻略

    2007-09-23 09:06:00
  • 用javascript判断浏览器版本

    2008-04-21 13:50:00
  • 在ASP中使用SQL语句之5:开始执行

    2007-08-11 12:36:00
  • vbscript与javascript如何传递变量(包括服务器端与客户端)

    2008-04-09 13:46:00
  • 使用网际数据库浏览器在线维护Access数据库

    2008-05-23 13:05:00
  • 详细介绍查询优化技术在现实系统中的运用

    2009-01-04 13:34:00
  • MySQL数据库中设列的默认值为Now()的介绍

    2009-03-06 17:40:00
  • 文字适度阅读的宽度或者字数

    2007-10-26 07:31:00
  • 对Django 转发和重定向的实例详解

    2023-06-19 04:17:53
  • ASP常见的保留字整理(变量与表名注意不能用)

    2013-06-01 19:58:01
  • 精致的web设计

    2009-12-04 19:07:00
  • Oracle 游标使用总结

    2009-10-02 17:36:00
  • 空间session失效过快的解决办法

    2010-09-15 10:01:00
  • 提高ASP性能的最佳选择第二部分

    2007-08-15 12:46:00
  • asp之家 网络编程 m.aspxhome.com