移动/触摸屏幕 - 滑动时水平滚动

2024-01-08

这个问题是在详细讨论后提出的这个问题 https://stackoverflow.com/q/11649405/226906

Problem:

我需要一个水平滚动,可以使用桌面上的鼠标拖动和启用触摸的屏幕上的滑动事件来滚动

可能的解决方案:

我尝试使用 jQuery Dragscrollable,它在桌面上运行良好,但在支持触摸的设备上运行不佳

于是我继续探索触摸滑动 Jquery 插件 https://github.com/mattbryson/TouchSwipe-Jquery-Plugin并提出了一个可能的解决方案JSFiddle 代码 http://jsfiddle.net/celestialcitizen/BR4Av/可以找到 JSFiddle 的结果here http://jsfiddle.net/celestialcitizen/BR4Av/embedded/result/

您还可以在以下位置找到工作演示:here http://touchswipedemo.celestialcitizen.jit.su/

我的javascript代码如下

//to detect if device has touch enabled
var is_touch_device = 'ontouchstart' in document.documentElement;

        $(function() 
        {
                $('.myClass').dragscrollable();
                //if touch is enabled then we have to map the swipe event                         
                if(is_touch_device)
                    $('.panel_list').swipe( { swipeStatus:scroll_panel_list, allowPageScroll:'horizontal' } );
                function scroll_panel_list(event, phase, direction, distance)
                {
                    var pos = $('.myClass').scrollLeft();
                    if(direction == 'left')
                    {
                        $('.myClass').animate({scrollLeft: pos + 200} );
                    }
                    if(direction == 'right')
                    {
                        $('.myClass').animate({scrollLeft: pos - 200} );
                    }
                }    
            });​

我测试过它在 Android 浏览器上运行良好,但在 iPhone 上响应不太灵敏。

有人可以帮我想出更好的解决方案吗?我正在使用 Twitter 引导程序

EDIT:1

好吧,现在我想我可能偶然发现了一个不错的插件,它似乎在桌面和触摸设备上运行良好,该插件称为jquery.dragscroll https://github.com/iwyg/jquery.dragscroll,我有一个更新的演示here http://touchswipedemo.celestialcitizen.jit.su/

EDIT:2

似乎还有另一个支持触摸设备的插件,它叫做过度滚动 https://github.com/azoff/Overscroll。我还没有评价过


此外,还有“Swipeview”脚本http://cubiq.org/swipeview http://cubiq.org/swipeview

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

移动/触摸屏幕 - 滑动时水平滚动 的相关文章

  • 对自定义打字稿错误实例实施instanceof检查?

    打字稿有这个instanceof 检查自定义错误 https github com Microsoft TypeScript issues 13965问题 但尚不清楚我们需要做什么才能得到instanceof在职的 例如对于这个异常我们如何
  • 按下了哪个提交按钮?

    在这个jsfiddle中 http jsfiddle net littlesandra88 eGRRb http jsfiddle net littlesandra88 eGRRb 我是否提交了自动生成的按钮 每个表行都有一个唯一的 ID
  • 使用 javascript 调用 ViewComponent

    我有一个带有几个视图组件的网页 当我单击这些组件时 我会为其打开一个简单的编辑器 请参见下图 如果我编辑文本并按 Enter 键 我想重新渲染视图组件而不是孔页面 是否可以使用 javascript 调用视图组件来获得此行为 通过更新 您现
  • 如何制作像Stackoverflow一样的可折叠评论框

    我正在构建一个网站 并且有一个状态更新列表 我希望允许用户为列表中的每个项目撰写评论 但是我正在尝试实现一个类似于堆栈溢出工作方式的用户界面 特别是可折叠的评论表单 列表 用户在其中单击对列表中的特定状态更新添加评论 并且在列表中的该项目下
  • 从 DOM 中删除后,动态添加的 JavaScript 脚本会继续执行

    因此 我正在创建一个 SPA 并使用 AJAX 将 HTML 页面加载到我网站的索引页面中 问题是 当包含我的一个页面时 它似乎会徘 徊并执行其中的 JavaScript 代码 即使它随后从 DOM 中删除 索引 html 正文 div d
  • 如何在 Chrome 中实现抓取光标图标?

    我知道可以在 Chrome 中使用抓取光标图标 当然是在 Gmail 中 但我不知道如何在我的代码中实现它 我已经尝试过 在CSS中 body cursor grab body cursor webkit grab body cursor
  • 捕获外部脚本文件中的 javascript 错误

    我有一点 JavaScript Jquery 工具的叠加层 http flowplayer org tools overlay index html 当放到错误使用它的页面上时可能会引发异常 我正在尝试优雅地处理它 我有一个通用的 wind
  • 如何向尚未添加到页面的元素注册 Javascript 事件处理程序

    我正在尝试构建一个greasemonkey 脚本 它将根据用户与其他动态创建的数据表的交互动态创建数据表 我的问题是 每次创建表时 我都必须进行两次传递 一次用于创建表 另一次用于获取表中我想要添加事件处理程序的所有对象 通过 id 并添加
  • 带有嵌入式 Ruby 的 Javascript:如何安全地将 ruby​​ 值分配给 javascript 变量

    我在页面的 javascript 块中有这一行 res foo 处理这种情况的最佳方法是什么 ruby var里面有单引号吗 否则会破坏 JavaScript 代码 我想我会用红宝石JSON http json org ruby var 上
  • 有没有办法在 TypeScript 2+ 中全局添加类型定义?

    我有一堆简单的 ts files 不是项目 即独立的 ts 脚本 他们使用一些 Node js 功能 TypeScript 和节点类型定义通过安装 npm install g typescript npm install g types n
  • 用于导出到 CSV/Excel 的数据 URI(无服务器端请求):浏览器支持/限制?

    以下问题 Javascript 或 Flash 导出至 CSV Excel https stackoverflow com questions 8150516 javascript or flash export to csv excel
  • Rxjs 可观察等待直到满足某些条件

    我有以下重试逻辑来重试操作 对于单个请求来说它工作得很好 对于多个正在进行的请求 我想在重试之前等待现有的重试逻辑完成 handleError errors Observable
  • 全局定义的 AngularJS 控制器和封装

    根据 AngularJS 的教程 控制器函数仅位于全局范围内 http docs angularjs org tutorial step 04 http docs angularjs org tutorial step 04 控制器函数本身
  • 在外部单击时关闭弹出 div

    我有一个弹出 div 仅在单击特定按钮时显示 单击同一按钮时它甚至会隐藏 我的问题是 我还想在单击外部任何地方时隐藏 div 我无法这样做 因为弹出 div 位于主包装类内部 并且无法通过在包装类上使用 click 事件并使其隐藏来做到这一
  • 有不同图像尺寸的缩略图 Bootstrap

    我想要包含不同大小和不同文本量的图像的缩略图 但我希望它们都具有相同的大小 像这样来自 Bootstrap 站点的示例 http getbootstrap com components thumbnails custom content 下
  • 单击react.js 切换列表的背景颜色

    我正在尝试创建一个具有以下功能的列表 悬停时更改列表项的背景颜色 单击时更改列表项的背景颜色 在单击的元素之间切换背景颜色 即列表中只有一个元素可以具有 clicked 属性 我已经执行了 onhover 1 和 2 功能 但无法实现第三个
  • 如何在 JavaScript 中设置/更新 String 对象的值

    我有一个具有一些属性的对象字符串对象 var obj foo new String bar 我在用字符串对象因为我需要在对象上存储额外的子属性 同时仍然能够获取字符串值 obj foo baz baz obj foo gt bar 我觉得问
  • 如何在 ChartJS 中创建自定义图例

    我需要使用 ChartJS 库为我的圆环图创建自定义图例 我已经使用 ChartJS 提供的默认图例创建了甜甜圈 但我需要一些修改 我希望其价值高于汽车名称 另外 我不喜欢粘性图例 我想将其与甜甜圈分开 这样我就可以更改字体 框的样式 例如
  • Javascript / jQuery - 转换特殊 html 字符

    我有一个pre元素中包含一些 html 代码 该代码中有特殊字符 例如 lt 所以它不会破坏页面 然后我有一个 javascript 函数 它获取此 pre 元素的内容 突出显示它 使用 codemirror 并用突出显示的文本替换元素内容
  • 我可以防止将 Leaflet 地图平移到世界边缘之外吗?

    有没有办法限制平移到世界边缘之外 在这幅画中 棕色是世界 灰色是虚空 我想让它不可能像这样平移 Leaflet 允许您控制地图抵抗被拖出边界的程度maxBoundsViscosity选项 值 0 到 1 将其设置为最大值会完全禁用拖动出界

随机推荐

  • django 查询集上的复杂注释

    我遇到一个问题 无法从复杂的环境中获取所需的所有信息 annotate 调用我的 django 视图 这是我的模型 RECORD STATUS 0 Hidden 1 Unhidden 2 Deleted class Activity mod
  • 模拟网络连接不良

    我正在开发一个可以通过 LAN 访问互联网的嵌入式设备 我现在正处于测试阶段 我想测试当互联网连接较差时设备的性能 目前 该设备通过集线器连接到路由器 我用集线器通过 Wireshark 监控数据包 降低设备的互联网速度以模拟可能发生的场景
  • R计算数据帧中相似行的出现次数

    我有以下格式的数据 称为 DF 这只是一个简化的示例 eval num eval count fitness fitness mean green h 0 green v 0 offset 0 random 1 1 1500 1500 10
  • Winform 更新长时间运行的任务

    当应用程序执行长时间运行的任务时 您是否有一个好的解决方案来保持 请稍候 winform 绘制 我尝试在每个步骤中使用 form refresh 但是会发生一些长时间运行的查询 这意味着这不够频繁 基本上是这个那么问题 https stac
  • 简单英语中的乔姆斯基层次结构

    我试图找到乔姆斯基提出的 4 个级别的正式语法 无限制 上下文相关 上下文无关 常规 的简单 即非形式 解释 我已经很久没有学习正式语法了 各种定义现在让我难以想象 明确地说 我是not寻找随处可见的正式定义 例如here http en
  • 如何在管理面板中使用动态数据?

    class Message models Model date models DateField user models ForeignKey UserEx groups models ManyToManyField Group main
  • 如何通过仅编写一次来在客户端和服务器之间共享域类和业务规则,就像在 RIA 服务中一样

    在 ASP NET WCF 应用程序中 我希望在客户端和服务器之间共享域类和业务规则 而不需要重写它们 就像在 Silverlight RIA 服务中一样 将这些收集在一个程序集中并从客户端和服务器引用它可以解决问题 但是如何解决 通过向客
  • 反应性可观察订阅处置

    如果我有权访问一个我知道只会返回一项的 IObservable 这是否有效 它是最佳使用模式吗 IDisposable disposable null disposable myObservable Subscribe x gt DoThi
  • 禁用 Heroku 路由器日志

    我写了一个 Heroku 应用程序 这是一个非常简单的 API 一些GET向其发出的请求包含其参数中的敏感信息 最好不要让 Heroku 记录这些敏感信息 有什么办法可以拥有 Herokunot记录请求或者更好的是 截断路径以使其不包含参数
  • c++ 存储函数和参数列表以供以后使用

    所以我想通过用 C 编写一个小型线程池来挑战自己 并且我想尝试模仿 std thread 的易用方式 您可以创建一个线程并作为参数发送一个函数和参数与 pthreads 之类的函数相比 pthreads 强制您将 void 作为该函数的唯一
  • 刺激控制器在 Rails 7 应用程序中根本无法运行

    我真的很难让 Stimulus 控制器在我正在开发的 Rails 7 应用程序中运行 并且非常感谢任何人可能提供的帮助 我一直在旋转我的轮子 我的应用程序 js Configure your import map in config imp
  • (注意)child pid XXXX 退出信号分段错误(11),/etc/apache2 中可能存在 coredump

    我的 Apache 日志中不断收到以下错误 Wed Sep 18 17 59 20 2013 notice Apache 2 2 22 Ubuntu PHP 5 3 10 1ubuntu3 8 with Suhosin Patch conf
  • 如何为内存中的 HSQL 编写自定义函数

    我想在 HSQL 中编写一个简单的函数 以便它向后兼容 DB2 函数 理论上 我应该能够用 java 编写自定义函数并将其挂接到 HSQL 中 有这方面的任何指导 文件吗 用户定义的函数记录在 HSQLDB 指南中 有关用 Java 编写的
  • java中防止线程重复处理

    问题陈述 我有一个JMS侦听器作为侦听主题的线程运行 一旦有消息进来 我就会生成一个新的Thread处理入界消息 因此 对于每条传入的消息 我都会生成一个新的Thread 我有一个场景 当按顺序立即注入重复消息时 也会处理重复消息 我需要阻
  • 跨多个应用程序的 Google Smart Lock

    我一直在尝试让谷歌的智能锁在我拥有的两个应用程序之间工作 不幸的是使用不同的密钥库 但没有任何运气 在 Smart Lock 中保存一个应用程序的密码非常简单 APP 1 做类似的事情 Credential credential new C
  • 使 svg 容器在数组循环中出现在另一个容器下面

    我有以下代码 我创建了两个不同高度和宽度的 svg 容器 并为数组中的每个元素创建它 该代码运行良好 但我想要 svg 容器 text1 其中包含title1出现在 svg 容器 text2 下方 显示title2而不是像现在这样并排 即彼
  • 如何为 Java EE 开发人员升级 Eclipse?

    有没有什么不痛苦的方法来升级 Eclipse 安装 我尝试浏览 eclipse 站点 但找不到有用的描述 将更新 URL 添加到您的可用站点 窗口 gt 首选项 gt 安装 更新 gt 可用软件站点 gt 添加 Name Oxygen Lo
  • Blazor WASM - 全局捕获 401 并导航到所有 HttpClient 调用的登录页面

    In blazor template httpclient添加在Program cs class builder Services AddTransient sp gt new HttpClient BaseAddress new Uri
  • 是否可以在 Android/dalvik 中重写 Java 类中的本机方法?

    我正在对一个类进行单元测试TestMe使用 EasyMock 及其方法之一 例如method N n 需要一个类型的参数N它有一个本机方法 比如nativeMethod class TestMe void method N n Do stu
  • 移动/触摸屏幕 - 滑动时水平滚动

    这个问题是在详细讨论后提出的这个问题 https stackoverflow com q 11649405 226906 Problem 我需要一个水平滚动 可以使用桌面上的鼠标拖动和启用触摸的屏幕上的滑动事件来滚动 可能的解决方案 我尝试