Jquery点击事件无法在移动设备上运行

时间:2015-08-25 17:59:20

标签: javascript jquery html mobile

我有一个按钮,其功能绑定到click事件。在桌面浏览器中它工作正常,但我无法在我的iOS设备中使其工作。这是html:

<i class="fa fa-angle-up fa-3x custom-close" id="olivares-close">

这是javascript:

$('#olivares-close').click(function(){
  $('#olivares').slideUp('slow', function(){
    $(window).trigger('resize.px.parallax');
  });
});

我也试过这个JS:

$('#olivares-close').on('click touch', function(){
  $('#olivares').slideUp('slow', function(){
    $(window).trigger('resize.px.parallax');
  });
});

这些都不适用于移动设备。我还尝试了事件'touchstart''touchend',但没有效果。我还尝试使用.bind()代替.on()

我也尝试过使用Jquery mobile .on('tap',function(){...});但是也没有工作(另外,我不想包含jquery mobile,因为我不在网络的任何其他地方使用它,我也不想这样做很重的装载)

我还尝试将<i>元素包装在<a></a>元素中,并将click函数绑定到<a>,但这两种方法都不起作用。

每个其他点击功能在移动设备上都能完美运行,唯一的问题就是这个。

编辑:我的元素所在的html容器最初隐藏了display:none

谢谢!

2 个答案:

答案 0 :(得分:0)

如果您决定包含jQuery Mobile,请尝试使用vclick事件而不是单击。 jQuery Mobile&#34; vclick&#34;事件处理程序模拟&#34; onclick&#34;移动设备上的事件处理程序我希望这有帮助!

答案 1 :(得分:0)

我发现适用于Android设备的是:

js.executeScript(&#34; $(&#39;#pageElement .elementClassName&#39;)。触发器(&#39; touchstart&#39;)&#34;);

我还没有机会对IOS进行测试,但它可能值得一试。

相关问题