我最近负责对旧客户门户进行一些升级。它运行在一些旧的库,如jq1.3.2,所以你可以想象当网站被测试时,它被发现不适用于IE浏览器(使用边缘引擎)和Firefox的某些浏览器的当前版本。我已经将jq版本更新到1.9.0并使其适用于所有版本的IE和Chrome以及jq迁移补丁,因为$ .browser未定义(在jq 1.9中删除)并且在整个站点中使用。
目前的Firefox仍然无法加载该网站,其他浏览器将接受$ .browser的补丁,并按照预期在控制台中通过日志记录加载脚本,但Firefox似乎在单个加载中加载脚本文件两次/刷新和不稳定的顺序所以我的猜测是$ .browser迁移补丁没有在正确的时间加载,所以它仍然发现它是未定义的。经过一些试验和错误,我发现这是从版本41开始,40.0.3很好并且完全加载网站,控制台显示正确的日志记录顺序,但只要41+安装BOOM。以下是每个版本控制台显示的行为的屏幕截图:
Firefox 40.0.3(当前的Chrome和IE):
Firefox 41 +:
KEY:
0开始 - $ .broswer补丁迁移脚本加载
0结束 - $ .broswer补丁迁移脚本已完成
1启动 - jQueryUI1.7.2脚本加载
1结束 - jQueryUI1.7.2脚本完成
-1 - 头部加载的脚本
脚本调用:
<script type="text/javascript" src="https://code.jquery.com/jquery-1.9.0.js"></script>
<script type="text/javascript" src="./js/newTree/jquery.browser.min.js"></script>
<script type="text/javascript" src="./js/jquery-ui-1.7.2.custom.min.js"></script>
有关卡巴斯基的错误显示但是我试图在没有变化的情况下禁用它,所以请忽略它。任何关于这些新版本的firefox所发生的事情的任何想法,是否与新的HTML5合规性有关?