问题标签 [momentum]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - Trigger.IO 动量滚动
是否可以将动量/惯性滚动添加到滚动?
我目前正在构建一个基本应用程序,并注意到 Webview 在滚动内容(iOS 6;iPhone 5)时不会响应滑动动作的动量。换句话说,慢速滑动和快速滑动最终会滚动到 Web 视图的同一部分(不像原生应用程序,其中说快速滑动应该滚动到更远的部分)。
是否有可能改变这种行为并使其更像原生?我已经尝试按照这些 iOS 动量滚动指令并修改 CSS,如下所示,但这不起作用:
作为一种解决方法,我觉得我可能会在我的 web 视图中使用 intertia 模拟 JS 库,但是如果可能的话,我想避免这个选项。
提前致谢!
android - Android上的溢出滚动不起作用?
是的,我是这些想用 HTML5 开发移动应用程序的人之一。在 Android 和 iOS 上。我知道听起来很疯狂。可惜我有问题...
我有一个带有页脚和页眉的经典应用程序以及应该可以滚动的内容。在 iOS 上,这非常棒!页眉和页脚在顶部/底部具有“位置:固定”,并且内容使用带有“-webkit-overflow-scrolling: touch;”的本机滚动动量。我知道“-webkit-overflow-scrolling: touch;” 在 Android 上不可用,但这个属性不仅被忽略,滚动根本不起作用!
所以请谁能告诉我如何在 iOS 上获得“本机”滚动和在 Android 上以相同的标记和样式获得“好”滚动?例如,如果我可以使用具有动量的原生滚动 - 很好,如果不是 - 普通滚动。
注意:我现在只需要支持最新版本(没有 Android 2.3!),所以我不想要像 iScroll 4 这样的 JS-Fallbacks。
JSFiddle:http: //jsfiddle.net/bmJxN/
谢谢!
2d - 在 2d 物理中添加力时惯性的问题
我尝试制作一个非常简单的二维物理函数来解决以球体粒子作为对撞机的刚体,
我有一个刚体和粒子类:
所以基本上,每一帧我计算存储在每个刚体中的每个粒子的新位置,然后我检查粒子到粒子的碰撞,如果发生碰撞,我计算一个力来排斥它们(基于半径和里面有多少嚼劲)它们),然后我将这个力存储在粒子中,
我通过向我的刚体添加和冲量来计算线性速度和角度速度,以获得它包含的所有粒子上的所有力存储。
我的函数 addImpulse(用脉冲将力存储在粒子中并定位我的粒子的世界 pos):
我的问题是,这个函数对 linearVelocity 工作得很好,因为它接缝的角速度在最小的碰撞中变得非常大,现在,我不使用任何阻尼(线性或角度),我没有我的 angularVelocity 的惯性,
我想惯性缺失是我的问题,但是当我在互联网上查看如何计算它时,我有点困惑,
我在 box2d 中查看是否存储了惯性,并且它似乎是刚体的变量(作为质量)。我在互联网上发现惯性 = 质量 * (r*r)
问题 => 什么是 r ...
-if 是我重心的距离(所以我刚体的位置),显然一直等于 0(body.position - body.position == 0)
在 box2d 中我发现:this.m_I = massData.I - this.m_mass * (massData.center.x * massData.center.x + massData.center.y * massData.center.y); 并且massData.center接缝是刚体形状的中心,在我的情况下,我的形状是2个球体,一个在(0,10),一个在(0,-10),所以中心是(0 ,0) ....
在另一个网站上我发现: for(i < numberOfParticle) I += ( massOfParticle(i) * (RelativePosOfParticle(i)*RelativePosOfParticle(i) ) 在这种情况下更好,因为当我平方每个粒子的距离时(而不是先搜索中心),我的 I 将大于 0。但是我不确定使用的公式是否正确......
如果有人可以用简单的方式解释我,如何计算惯性?如果我可以直接(而不是通过粒子)计算我的刚体的惯性?如果我可以存储惯性,或者如果它加深了应用冲动的地方(我也在其他网站上读到过......)?和/或为什么我的冲动函数会做错以获得如此大的角速度(也许是正常的,解决这个问题的阻尼是其他物理引擎)。
而且,如果有人可以回答(只是出于好奇),box2d 是否使用简单版本的惯性,因为计算速度更快并且结果足够好?还是Box2d的计算是正确的,我在阅读代码时漏掉了什么?
非常感谢^^,
马吕斯。
objective-c - 试图用 UIRotationGestureController 模拟动量/惯性
好的,所以我正在尝试在 iOS 中使用轮子形状制作“幸运之轮”类型的效果,我可以在其中抓住并旋转轮子。我目前可以随心所欲地拖动和旋转轮子,但是松开手指后,它就停止了。我需要对其施加一些动量或惯性,以模拟车轮自然旋转。
我已经进行了速度计算,所以当我抬起手指时,我NSLog
会得出一个速度(在最小 1 到最大 100 之间),范围在 1 到 1800 之间(在我最难的轻弹中!) ,现在我只是想确定如何将该速度转换为实际旋转以应用于对象,以及如何随着时间的推移减慢速度。
我最初的想法是这样的:开始以与给定速度相同的速度在一个循环上旋转一整圈,然后在随后的每次旋转中,将速度降低一小部分。这应该会产生一种效果,即较硬的旋转速度更快,并且需要更长的时间才能减速。
我不是数学家,所以我的方法可能是错误的,但如果有人对我如何让它工作有任何提示,至少在基本状态下,我将非常感激。这里有一个非常有用的答案:iPhone添加惯性/动量物理来动画“命运之轮”,如旋转控制,但它更具理论性,缺乏关于如何将计算出的速度准确应用于对象等的实用信息。我是我想我在这里也需要一些动画帮助。
编辑:我还需要弄清楚他们是顺时针还是逆时针拖动轮子。
非常感谢!
unity3d - 需要 Unity 角色控制器进行 90 度急转弯并且转弯时不滑动
我正在使用第一人称控制器进行角色移动。在左箭头键上,我希望角色立即旋转 90 度并继续前进。目前,当我按下箭头键时,角色进行了 90 度的急转弯,但角色之前的前进动力需要一秒钟才能消退,因此角色最终会朝他之前移动的方向滑动。
我能想到的最接近的例子来直观地解释我正在尝试做的事情是角色如何在 Temple Run 中变得敏锐。我的游戏目前是如何运作的,如果我让壁架上的角色向左急转,他很可能会保持原来的动力并在转弯后立即滑出边缘。
由于我的角色在 x/z 轴上运行,我想知道是否有某种方法可以交换方向速度/动量?角色在 x 轴上的速度在它转动时会立即切换到 z 轴,而另一个将设置为零。我显然愿意接受任何可以完成我正在寻找的解决方案。
我深入研究了第一人称控制器中的 CharacterMotor 类,但还没有找到我可以调整的部分来实现这一点。
我将不胜感激任何帮助。
谢谢你。
javascript - 在 javascript 中强制停止 iphone/ipad 上的动量滚动
是否可以在 javascript 中强制停止 iphone/ipad 上的动量滚动?
额外:很确定这是天上掉下来的馅饼,但是对于奖励点(荣誉和荣誉),在 dom-manipulation 和 scrollTo 应用之后,在强制停止之前以相同的动量恢复滚动。如何?
ios - 向 UIPanGestureRecognizer 添加惯性
我正在尝试在屏幕上移动一个子视图,但我也想为对象添加惯性或动量。
我已经拥有的 UIPanGestureRecognizer 代码如下。
提前致谢。
再次感谢。
javascript - 在 iPad 上检测页面元素上的动量/惯性滚动
我正在为需要在 iPad 上运行的网页构建一个无限滚动组件。
所以 - 当用户滚动到列表底部时,我们会加载更多内容并在加载时显示动画 ajax 加载器图像。
通过使用 touchmove 事件来测量页面滚动位置并在需要时加载内容,我已经设法让它工作到一定程度。但是 - 当我们滚动页面时,任何动画 gif(或 css 动画图标)都会停止动画(大概是为了减少 gpu 上的负载)。
然而,我找到了解决这个问题的方法——如果我在其上创建一个带有溢出:滚动的元素,我可以将我的所有内容放入其中并在 touchmove 上使用相同的测量位置的方法,但动画 gif 仍然继续动画,我可以也在后台运行javascript函数。
但是 - 我也希望滚动区域在滚动后让标准的 iOS 动量/惯性减慢。我设法通过将 -webkit-overflow-scrolling: touch 应用于滚动区域来实现这一点。
所以 - 对于我的问题 - 当我释放滚动元素并且它逐渐减速时,我想测量滚动元素的位置,因为它会自动减速(如果这有意义的话)。我可以在滚动使用“touchmove”事件时对其进行测量,并且可以在动量停止时进行测量,但不能在动量/减速位期间进行测量。
我可以在它发生时运行 javascript 循环/间隔,但似乎不可能准确测量元素的滚动位置,因为它逐渐变慢。
有任何想法吗?
谢谢
ios - 更新数据和使用动量滚动时如何防止 SlickGrid 闪烁?
我创建了一个用于 IOS 设备的 SlickGrid。我每隔 1 秒更新一次数据(通过网络套接字)。我通过添加以下 css 在其上添加了动量滚动:
这会导致网格在每次更新时闪烁!!如果我删除上面的 css,它会停止闪烁。如果我停止更新数据(打开动量滚动),它也会停止闪烁。您可以通过在 SlickGrid wiki 中给出的“突出显示和闪烁单元格”(或示例文件夹中的示例 14)示例中添加上述 css 来复制问题。
当我添加上述 css 以在 IOS 设备上启用动量滚动时,每次更新时网格都会闪烁。如何消除闪烁?
jquery - jquery在拖动上应用惯性动量
我写了一个小脚本来拖动一个 div 容器。它适用于触摸和鼠标事件。
为了让我的容器在 touchend 之后移动,我在编写动量脚本时遇到了一些困难。我知道如何计算动量,但我不知道实现它的正确方法是什么......
这是我的脚本:
和小提琴:http: //jsfiddle.net/V5Jmu/2/
更新
由于matjazek的回答,我做了一个新的小提琴,它似乎工作得更好