Jai*_*oya 5 javascript jquery jquery-migrate
我已经将 jQuery 从 1.3.1 升级到 1.12.4。一切正常,我准备删除 jquery-migrate-1.4.1.js,因为我在升级过程中仅将其用于调试目的。
当我从<head>我的网站部分删除 jquery-migrate-1.4.1.js 时,该页面不再正常工作。JavaScript/jQuery 中的某些内容中断了。我正在阅读https://blog.jquery.com/2016/05/19/jquery-migrate-1-4-1-released-and-the-path-to-jquery-3-0/试图找到有关它,这是我发现的:
删除 Migrate 1.x 插件并确保页面在未加载的情况下仍能正常工作。
为什么在成功升级 jQuery 后需要 jquery-migrate-1.4.1.js?我认为它只是一个专门用于调试目的的“幕后”脚本,而不是维护任何 jQuery/JavaScript 功能。
目前让您陷入困境的误解是,其目的jquery-migrate-1.4.1.js是安装一些向后关注的解决方法,以使早期的 jQuery 代码在更新的 jQuery 中工作,同时也向您的 console.log 抱怨,以便您可以修复它。它实际上并没有改变你的代码。根据您的评论,有一些可帮助您迁移的提示:
我看到例如:“JQMIGRATE:jQuery.browser 已弃用”。但这很奇怪,因为该错误的来源是 jquery-migrate-1.4.1.js:45 并且是 jquery-migrate-1.4.1.js 文件,而不是我在代码中使用 jQuery.browser。
进行日志记录的行位于 中jquery-migrate-1.4.1.js,因此错误似乎指向该文件,但是,调用的行jQuery.browser可能位于您正在加载的插件中(这在 jQuery 早期很常见,人们编写了特定于浏览器的 hack)您可以尝试并.browser在所有链接文件(甚至是缩小的文件)中进行搜索.js,至少隔离该插件,然后尝试寻找替代方案。
我看到诸如以下内容:“jquery-migrate-1.4.1.js:45 JQMIGRATE: jQuery.fn.size() 已弃用;使用 .length 属性”。但我在源代码中找不到 jQuery.fn.size() 。
的方法jQuery.fn.size()可能会出现在您的代码中,如下所示:
$('li.items').size()
Run Code Online (Sandbox Code Playgroud)
jQuery.fn只是 jQuery 元素函数的对象名称。因为您的 jQuery 对象基于您编写的 jQuery 选择器,所以可能很难搜索它,而是查找类似的内容,.size()如果它显示在 jQuery 选择器的右侧,则尝试将其替换为.length(没有括号,如length只是一个属性)。
如果您还有其他问题,最好将它们作为新问题发布,以便他们可以获得更直接且普遍有用的答案。
| 归档时间: |
|
| 查看次数: |
8451 次 |
| 最近记录: |