2012-08-31 41 views
0

我有一个html jquery移动多页面,并使用swipeleft和swiperight事件来翻页。 它很好用。如何禁用垂直滚动,同时使用jquery mobile启用swipeleft和swiperight事件?

现在我想禁用垂直滚动。

从溶液中我发现计算器,它建议使用以下

$(document).delegate('.ui-content', 'touchmove', false);​ 

但在这种情况下,原始swipeleft和swiperight事件被禁用了。

有没有一种方法可以在保持swipeleft和swiperight事件的同时禁用垂直滚动?

+0

如果要禁用垂直滚动;您的页面是否已经小于视口? –

回答

0

您可以添加以下到您的

<script> 
    function BlockMove(event) { 
     // Tell Safari not to move the window. 
     event.preventDefault(); 
    } 
    </script> 

,并添加到您的身体标记

<body onload="setTimeout(function() { window.scrollTo(0, 1) }, 100);" ontouchmove="BlockMove(event);"> 

这将禁用页面滚动,让您刷卡

+0

嗨唐纳德, 它的工作原理。谢谢。 但是请问设置超时功能的目的是什么? 现在每次翻页后,内容都需要一段时间才能获得焦点。即页面中的文本有点模糊并在1秒内变得清晰。 – Bowie

+0

这是另外一个非常酷的脚本,它允许有很多选项......不超过50行JS。 http://stackoverflow.com/questions/10357844/how-to-disable-rubber-band-in-ios-web-apps – trgraglia