jQuery库之间的兼容性问题

时间:2019-04-20 17:07:26

标签: jquery

我在代码中使用了一些jquery:

$('li.dropdown-toggle').on('hover', function () {
    $(this).find(".submenu").slideToggle(400);
});

当我链接到1.7.2 jQuery库(https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js)时,它工作正常。

不幸的是,该网站需要3.1.0库(https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js)。

如何在不交换库的情况下修改代码以确保其正常工作?

just in case, here is the fiddle-在这种提琴中可以正常使用,但是当我将库更改为3+时,它将停止工作

谢谢

1 个答案:

答案 0 :(得分:3)

http://api.jquery.com/on/#additional-notes

  

在jQuery 1.8中已弃用,在1.9中已删除:名称“ hover”用作字符串“ mouseenter mouseleave”的简写。它为这两个事件附加了一个事件处理程序,该处理程序必须检查event.type以确定该事件是mouseenter还是mouseleave。

只需将.on('hover', function() { ... })替换为.on('mouseenter mouseleave', function() {...})