Javascript jqueryui菜单问题
当您在jquery菜单中离开子菜单的父项时,关闭子菜单会有一点延迟。 有没有办法禁用它并立即关闭它 *我知道这是一个死气沉沉的图书馆,但我只是想问一下,以防你们中的任何人还记得什么Javascript jqueryui菜单问题,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,当您在jquery菜单中离开子菜单的父项时,关闭子菜单会有一点延迟。 有没有办法禁用它并立即关闭它 *我知道这是一个死气沉沉的图书馆,但我只是想问一下,以防你们中的任何人还记得什么 $(函数(){ $(“#菜单”).menu(); }); #菜单{ 宽度:150px; } 不带子菜单 带子菜单 子菜单 菜单小部件确实有300毫秒的延迟 因此,如果您从这里下载js文件的非精简版本: https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.
$(函数(){
$(“#菜单”).menu();
});代码>
#菜单{
宽度:150px;
}
-
不带子菜单
-
带子菜单
- 子菜单
菜单小部件确实有300毫秒的延迟
因此,如果您从这里下载js文件的非精简版本:
https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.js (based on the OP's URL)
然后在本地使用该文件。然后,在文件中,在第4946行更改延迟(在菜单小部件中,在第4943行注明):
4943 var widgetsMenu=$.widget(“ui.menu”{
4944版本:“1.12.1”,
4945默认元素:“”,
4946延迟:300,//此延迟
4947项选择:{
…设置为较低的值,例如100(或更低),然后保存、重新加载页面并检查行为
请注意,我将不完全删除延迟
,因为有对该属性/属性的引用,但将其设置为一个较低的值,以使其几乎不被察觉。在其上的工作方式完全相同,因此可能需要深入研究其代码。一些好消息。菜单小部件确实有300毫秒的延迟。So、 如果下载js文件的非精简版本(第二个脚本行,删除min.
部分以从url保存文件),然后在本地使用该文件。在该文件中,更改第4946行的延迟(在菜单小部件中,第4943行注明)设置一个较低的值,比如说100,然后保存,重新加载页面并检查行为。哇,谢谢。我完全删除了延迟参数,工作得很有魅力!如果你想要一些积分,你可以发布一个答案。我不知道我会完全删除delay
,以避免造成其他可能的麻烦(因为它在一些菜单位置被引用),但将其设置为非常低的值,例如10或25毫秒,以使其几乎不被注意。我将添加一个接近我的注释的答案。
4943 var widgetsMenu = $.widget( "ui.menu", {
4944 version: "1.12.1",
4945 defaultElement: "<ul>",
4946 delay: 300, // THIS delay
4947 options: {