IE9错误-JavaScript只在打开开发人员工具一次后才起作用
我们的网站为用户提供免费的pdf下载,并且有一个简单的“输入下载密码”功能。但是,它在InternetExplorer中根本不起作用
在本例中,您可以自己看到
下载通行证是“makeuseof”。在任何其他浏览器中,它都可以正常工作。在IE中,两个按钮都不起作用
我发现最奇怪的是,如果你用F12打开和关闭开发者工具栏,它就会突然开始工作
我们已经尝试过兼容模式,没有什么不同
如何在Internet Explorer中实现此功能
听起来您的javascript中可能有一些调试代码
您描述的体验是包含console.log()或任何其他console功能的典型代码
控制台对象仅在打开开发工具工具栏时激活。在此之前,调用console对象将导致将其报告为未定义。打开工具栏后,控制台将存在(即使工具栏随后关闭),因此控制台调用将工作
有几种解决方案:
最明显的一个方法是遍历代码,删除对控制台的引用。无论如何,你不应该在生产代码中留下这样的东西
如果要保留控制台引用,可以将它们包装在If()语句中,或者在尝试调用控制台对象之前检查其是否存在的其他条件中