ReferenceError: Can't find variable: _e_0uWl - Browser &

ReferenceError: Can't find variable: _e_0uWl - Browser "breaks"

本文关键字:0uWl variable Browser Can ReferenceError find      更新时间:2023-09-26

我们在Safari 6.0.4有一个非常奇怪的问题:

用户可以愉快地浏览我们的页面,突然他们在我们所有的页面上看到这个:

ReferenceError: Can't find variable: _e_0uWl

其他网站仍然可以正常工作。解决这个问题的唯一办法就是重启Safari。
该网站是建立在asp.net与jquery等。我们搜索了所有的代码,没有找到任何可以引用:_e_0uWl

的内容。

所有扩展被禁用。
让我困惑的是,这不仅仅发生在一个页面上,如果你把它移开,它就会再次工作,不,一旦它被打破了,它就会保持不变。是什么让浏览器做到这一点呢?

Update:这种情况又发生了几次,但是使用了不同的变量名:

ReferenceError: Can't find variable: _e_028Y

我们甚至在Windows机器上使用Firefox。所以这不仅仅是Safari的问题。

规范

:ASP。. NET 4.5在IIS7上与MS优化框架捆绑和最小化。jQuery 1.9.2, microsoft Ajax Control Toolkit.

作为一个非常快速的分析:

  • 这是发生在几个浏览器上,所以不是浏览器的错误,而是代码的错误。

  • 变量在你的代码中不是硬引用的,所以要么a)它是在你的代码被最小化/混淆时生成的(代码被最小化了吗?)或者b)变量被请求运行时,但它确实不存在于你的代码中的任何地方,因此错误或c)它是在一些外部库中。你用这些吗?

  • 问题在某一时刻发生,然后持续存在。因此,要么a)服务器突然发送之前没有发送的特定脚本标签,要么b)服务器突然在所有页面中发送一些数据,导致客户端函数出错,或者c)您在本地存储中存储了一些东西,现在它被破坏了,并且它将在所有未来的页面重载中被破坏。

现在一个一个地排除所有的情况,你可能会找到答案。使用调试器!

@ my view:

首先,如果可能的话,在启用或不启用调试的情况下在@localhost上运行此代码;否则在不同的web服务器或不同的web farm上运行

第二:如果这个问题仍然存在,检查发生问题的页面一个高质量的调试是必要的,检查是否有任何用户控制是在这个页面或ajax(非阻塞)请求在这个页面,请禁用这个一个接一个,最后检查是否有,因为这不能解决,请仔细检查javascript,如果有任何缩小或混淆,并尝试删除。

注意:请在相同的运行环境下构建和运行,请删除deploy/lib目录下的所有文件,并重新构建。