jQuery slideToggle无法在iPhone上运行

时间:2013-06-08 12:15:03

标签: jquery mobile

我有一个非常奇怪的问题。我正在为移动网站进行一些导航。当您点击“菜单”链接时,我希望导航菜单向下滑动,然后再次单击“菜单”时关闭。

以下是codepen的链接......

http://codepen.io/seraphzz/pen/EaKtb

正如您所看到的,我正在使用的jQuery代码就是这个......

$('.menuNav').click(function(){
    $('#menu-primary-menu').slideToggle();
});

此codepen是从我的实际网站获取的代码。

我的实际网站上的导航下拉列表适用于所有浏览器,甚至可以在IOS模拟器上运行,但它在我的iPhone上无效,即使这个代码确实如此。

单击菜单时,没有任何反应。

我不确定为什么会这样或如何调试。我删除了所有其他JS,但仍然无效。

我发现奇怪的是,这个codepen演示在我的iPhone上工作,但实际代码(相同)不起作用。我使用的是jQuery 1.9.1版。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

我认为这个问题来自CSS,而不是jQuery。

尝试清理CSS,问题可能会消失。

例如:

  • 当您使用jQuery为其设置动画时,菜单上的所有转换都是无用的。
  • 菜单项上的
  • float: left是不必要的。

您还可以检查菜单或其容器在您的网站上的位置(绝对,固定......)。在iPhone上定位存在一些问题。

答案 1 :(得分:0)

好的,我已经找到了答案。事实证明一切都是正确的,只是我的js文件没有在移动设备上更新。

我通过在IOS6上使用新的Web检查器功能并检查了文件来发现这一点。然后我清除了我的iPhone缓存,现在正在工作。