急,大家帮忙看看在FirFox下要点两下才能弹出层

mail_ylei 2010-03-05 01:02:03


if (document.all)
window.document.attachEvent("onclick",gorush);
else
window.document.addEventListener("click",gorush,false)


function gorush(){
var jmp=document.getElementById("jmpArea");
var obj;
if(document.all)
{
obj = event.srcElement ;
}
else
{
obj = arguments[0].target;
}
var ev=obj.id;
ev=ev.substring(0,3);
if(ev !="bsi")
{ jmp.style.display="none";return;}

}

function ShowProgressInfoN(evt)
{
evt=evt ? evt : (window.event ? window.event : null);
var jmpArea=document.getElementById("jmpArea");//jmpArea是个<div>
//...
jmpArea.style.display='block';
}





<div id="bsiaaaa" > 请点击这里</div> <div id="jmpArea">1111111111111111111</div>

...全文
157 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
mail_ylei 2010-03-07
  • 打赏
  • 举报
回复
哎 ,调了半天终于调出来了 郁闷哦 原来在firfox下 onclick和 onFocus 冲突
mail_ylei 2010-03-07
  • 打赏
  • 举报
回复
按8楼的调试,在firfox在 点第一次 什么也不弹出来 点第二下 提示 “弹出了” 在点其他地方 提示 “隐藏了”
郁闷哦
mail_ylei 2010-03-06
  • 打赏
  • 举报
回复
一开始是隐藏的 ,点一下显示出来, 在点页面任何地方(除了id前3位为bsi的控件) 都隐藏掉
mail_ylei 2010-03-06
  • 打赏
  • 举报
回复
这个在IE,chome,safari浏览器是点一次就可以,偏偏在firfox要点两下 郁闷
zhyzdl 2010-03-06
  • 打赏
  • 举报
回复
学习。。。。。。。。。。。。。。。。
KK3K2005 2010-03-06
  • 打赏
  • 举报
回复

function ShowProgressInfoN(evt)
{
evt=evt ? evt : (window.event ? window.event : null);
var jmpArea=document.getElementById("jmpArea");//jmpArea是个<div>
//...
jmpArea.style.display='block';
alert('弹出了')
}

function gorush(){
var jmp=document.getElementById("jmpArea");
var obj;
if(document.all)
{
obj = event.srcElement ;
}
else
{
obj = arguments[0].target;
}
var ev=obj.id;
ev=ev.substring(0,3);
if(ev !="bsi")
{ jmp.style.display="none";
alert('隐藏了');
return;}

}

调试下不就知道原因了
都几天时间了
mail_ylei 2010-03-06
  • 打赏
  • 举报
回复
不行的 改为true 在firfox下 先addEventListener 在标签的onclick事件-
czl21 2010-03-06
  • 打赏
  • 举报
回复
google的结果:
document.addEventListener("click",doclick,false);
里最后一个属性设置该事件的响应顺序;
true的话将是最先触发
顺序为 addEventListener->标签的onclick事件->document.onclick 
false的话是最后触发
顺序为 标签的onclick事件->document.onclick->addEventListener


改成 window.document.addEventListener("click",gorush, true) 试试
heixiaotu 2010-03-05
  • 打赏
  • 举报
回复
如果是两个DIV层的话. 第一个得点两次.. 如果刚开始就把层隐藏了. 点显示的时候,只需要一次/./
就OK
archko 2010-03-05
  • 打赏
  • 举报
回复
arguments.callee.caller.arguments[0]
ArGuments[0]这个不对吧
mail_ylei 2010-03-05
  • 打赏
  • 举报
回复

<div id="bsiaaaa" onclick="javascript:ShowProgressInfoN(event);return false;" > 请点击这里</div> <div id="jmpArea">1111111111111111111</div>

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧