4

我在我的网站中使用 jQuery jScrollPane插件,它在普通 PC 浏览器和 iPad、Android 平板电脑上运行良好。

但是,当我在 Windows 8 触摸屏笔记本电脑上打开我的网站时,我无法使用 iPad 或 Android 平板电脑中的触摸手势滚动页面。

我也试过这个演示网站(http://jscrollpane.kelvinluck.com/themes/lozenge/),我无法用触摸手势滚动内容。

要滚动页面,我必须转到滚动条并将其向左/向右拖动。之前使用默认滚动条我可以使用触摸手势滚动页面,现在我不能使用 jScrollPane。

我可以在Chrome中滚动内容(演示和我的网站,在 windows8 设备中),但不能在IE 和 FireFox中滚动

这是一个已知的问题?我怎样才能解决这个问题?

jScrollPane 是否仅支持 webkit 浏览器的触摸手势?

如果是,我们如何使它适用于所有浏览器,尤其是 Firefox 和 IE?

更新:

正如我在评论布鲁诺回答时提到的那样,我们已经尝试过使用以下样式来划分该部门。但没有运气

.scroll-pane{
overflow-x:scroll; 
-ms-touch-action: pan-x;    
}

and 

.scroll-pane{
overflow-x: scroll;
-ms-scroll-snap-type: mandatory;
-ms-scroll-snap-points-x: snapInterval(0%, 100%);

}
4

3 回答 3

8

将此样式添加到 CSS 的 body 标记中。

overflow-x:scroll ; 
-ms-touch-action: pan-x;

它对我有用。希望这对您也有帮助。祝你好运。

于 2013-01-29T11:31:09.670 回答
1

是的,jScollPane 只关心 webkit 触摸事件(它们是唯一的事件 atm),但现在 MS 引入了Pointer 事件,虽然很容易检测到许多开发人员不这样做。想到的另一个例子是 FlexSlider 插件,它也用于仅检测 touchend、touchstart 等。

如果您想让 jScollPane 在 Win8 中工作,您可能需要修改源并对其进行调整以检测 MS 指针事件。

于 2013-01-24T04:40:07.103 回答
1

我将 MsPointerEvents ( http://goo.gl/MnEIh ) 添加到 jquery.jscrollpane.js:

https://raw.github.com/karacas/jScrollPane/9fe8872f6e2438a87847e3d01b46648f06d15fc1/script/jquery.jscrollpane.js

希望它有效,对不起,但我无法测试这个,因为我没有 w8。

于 2013-01-29T03:12:43.513 回答