1

我有一个使用 Woocommerce 销售产品的网站。商店运行良好,直到我更新到 Wordress 5.5

现在,每当我编辑产品时,帖子编辑器中的几个元素都不起作用。我无法删除精选图片,也无法使用“文本”选项卡编辑帖子。此外,当我单击设置特色图片时,它会打开一个新标签(让我远离帖子编辑器),其中包含一个看起来很古老的特色图片页面。

我查看了控制台,我收到了这个错误:

 Uncaught TypeError: jQuery(...).live is not a function
      at HTMLDocument.<anonymous> (post.php?post=28000&action=edit:1636)
      at i (jquery.js?ver=1.12.4-wp:2)
      at Object.fireWith [as resolveWith] (jquery.js?ver=1.12.4-wp:2)
      at Function.ready (jquery.js?ver=1.12.4-wp:2)
      at HTMLDocument.J (jquery.js?ver=1.12.4-wp:2)

但是,堆栈跟踪并没有告诉我太多。以下是堆栈跟踪中的路径:

第一行:https ://sitename.com/wp-admin/post.php?post=28000&action=edit

第二、三、四、五行:https ://sitename.com/wp-includes/js/jquery/jquery.js?ver=1.12.4-wp

因此堆栈跟踪指向 Wordpress 包含的 jquery.js。这并没有告诉我太多,因为我的 Wordpress 版本是最新的 5.5。根据堆栈跟踪,我似乎无法弄清楚问题出在哪里,所以我不知道在哪里修复这个来自 jQuery 的折旧错误。

我能做些什么来解决这个问题吗?我试过使用这个插件并解决了这个问题:https ://wordpress.org/plugins/enable-jquery-migrate-helper/

但是,这只是一个临时修复,所以我不想使用这种方法。

4

2 回答 2

0

来自 jQuery .live() 函数文档

注意:这个 API 在 jQuery 1.9 中已经被移除;请改用 on()。

可能 jQuery 与 WordPress 一起更新,并且该功能已被弃用。

于 2020-09-30T18:42:51.280 回答
0

我必须找到站点文件中使用 .live() 并替换为 .on() 的所有地方。这解决了问题!

于 2020-10-28T20:40:35.773 回答