Javascript 移动设备上的jQuery单击功能慢(滞后)

Javascript 移动设备上的jQuery单击功能慢(滞后),javascript,jquery,mobile,Javascript,Jquery,Mobile,所以我有一个点击功能,可以切换下拉菜单,但在智能手机上,这个功能很慢而且不流畅 在使用jQuery的任何移动设备上,是否有其他方法可以使此下拉列表顺利过渡 (我听说过“vclick”,但不知道如何使它工作 $j('.dropdown-menu').click(function() { $j('.dropdown-menu').not(this).children('ul').slideUp("slow"); $j(this).children('ul').slideDown("slow"); }

所以我有一个点击功能,可以切换下拉菜单,但在智能手机上,这个功能很慢而且不流畅

在使用jQuery的任何移动设备上,是否有其他方法可以使此下拉列表顺利过渡

(我听说过“vclick”,但不知道如何使它工作

$j('.dropdown-menu').click(function() {
$j('.dropdown-menu').not(this).children('ul').slideUp("slow");
$j(this).children('ul').slideDown("slow");
});


$j('.dropdown-menu').blur(function() {
$j('.dropdown-inside').hide('slow', function() {
});
});

试着点击Id而不是类。类总是很慢。所以假设你的下拉列表有像“myDropdown”这样的Id,那么就这样做吧

$j('#myDropdown').click(function(){
    //your code here
});

第一部分可以简化为:

$j('.dropdown-menu').click(function() {
    $j('.dropdown-menu').not(this).children('ul').slideToggle(2000);
});
另外,尝试将隐藏内容包装在
div
中,并给它一个
宽度
。当你点击
div
时,它实际上会将其拉出位置进行测量,然后再快速替换,因为JQuery在显示之前不知道隐藏的
div
的尺寸。因此,这可能会导致整个ani拉吉

另一个建议:

ID
class
快。部分原因是
ID
应该是唯一的,因此在DOM中找到
ID
后,API停止搜索

如果必须使用
属性
选择器,则可以通过指定可选的上下文参数来提高性能

原因
根据:
…从您点击按钮触发单击事件起,移动浏览器将等待大约300毫秒。原因是浏览器正在等待查看您是否实际执行双击

解决方案
1.使用fastclick.js消除300毫秒的延迟

2.使用应用程序缓存加速加载

vclick
是一个仅在JQM框架中可用的自定义事件。谢谢!现在似乎快了一点。为隐藏的div指定一个宽度,即使在桌面版本上也会使转换看起来更好!恐怕我需要找到另一种编码方式,因为它仍然不是期望的结果。