ie bug之console.log

平时开发都用chrome浏览器进行测试。
公司的项目兼容到ie8浏览器,所以在头部加了<meta http-equiv="X-UA-Compatible" content="IE=8" />这样,在用ie以及360浏览器的时候,会自动以兼容ie8浏览器的情况下运行。
其中有一段代码:
$('#pay_success').on('click',function(){
/*支付成功 */
$.pdialog.closeCurrent();
$('#taskbar').hide();
//刷新当前页面,activePage_tabid就是当前页面的rel值
var activePage = $('#navTab').find('.tabsPageHeader').find('.tabsPageHeaderContent').find('.navTab-tab').find('.selected');
var activePage_tabid = activePage.attr('tabid');
console.log(activePage_tabid );
navTab.reloadFlag(activePage_tabid);
});
代码的意思就是当点击完支付成功的按钮后,会查找当前页的tabid,并执行刷新的命令(公司用的dwz框架)。在代码测试时chrome都很正常,然后提交完代码,让同事测试结果发现页面并不能刷新,然后同事用的是360浏览器,当我打开f12,检查代码时发现又能 执行了。问题困扰了我好久,最后决定不按f12,用alert检查代码执行的进度。
每一句后面加一个alert。
var activePage = $('#navTab').find('.tabsPageHeader').find('.tabsPageHeaderContent').find('.navTab-tab').find('.selected');
alert("11111");
var activePage_tabid = activePage.attr('tabid');
alert("22222");
console.log(activePage_tabid );
alert("33333");
navTab.reloadFlag(activePage_tabid);
结果发现alert 3 没有执行。按了f12之后,alert 3能够正常执行。尝试删除console.log之后,发现程序正常了,总结下来就是,在ie浏览器以及拥有ie内核 的浏览器上,console.log会阻塞程序进一步执行,当你想用f12检查程序哪里出错时,程序又能够正常执行了,使你怎么都找不到错误的地方。


总结,在ie浏览器下测试的话慎用console.log,以及,在项目即将上线的时候删除所有的调试语句。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值