我正在开发一个使用jQuery UI的网站,在我的网站上有几个元素在触摸屏设备上查看时显示为不兼容; 他们不会造成任何错误,但行为不是它应该的。 有问题的元素是由jQuery UI定义的滑块和范围滑块; 在触摸屏上,而不是将触摸logging为拾取手柄,拖动手柄拖动滑块,而是将整个网页滑动到屏幕侧面。 如果您点击手柄,然后点击滑块上您希望手柄最终位置的位置,它也可以工作,但这非常缓慢而不理想。 有任何想法吗? 我尝试下载jqtouch插件,然后将.touch([…])附加到滑块()和rangeslider()的所有调用,但没有奏效。 谢谢! 更新:我在jQuery UI网站上find了这个“补丁” http://bugs.jqueryui.com/ticket/4143 这表示它促进了iPhone上的滑块,但现在另一个愚蠢的问题:我如何将这个“补丁”纳入我的代码? 我只是将其包含在代码的开头,就像插件一样?
如何获得在iPad和其他触摸平台上工作的jQuery-uisortingfunction? http://jqueryui.com/demos/sortable/ 我试图与之合作 event.preventDefault(); event.cancelBubble=true; event.stopPropagation(); touchmove和滚动事件,但唯一的结果是 – 如预期的 – 页面不再滚动。 有任何想法吗? 谢谢! EH!
我创build了一个旋转木马,上一个和下一个button始终可见。 这些button有一个hover状态,他们变成蓝色。 在触摸设备上,如iPad,hover状态是粘滞的,所以点击后button保持蓝色。 我不要那个。 我可以为每个button添加一个no-hover类,让我的CSS像这样: button:not(.no-hover):hover { background-color: blue; } button:not(.no-hover):hover { background-color: blue; }但是这可能对性能非常不利,并且无法正确处理像Chromebook Pixel(同时包含触摸屏和鼠标)的设备。 我可以添加一个touch类到documentElement并使我的CSS如下所示: html:not(.touch) button:hover { background-color: blue; } html:not(.touch) button:hover { background-color: blue; }但是,这也不适用于具有触摸和鼠标的设备。 我更喜欢去掉hover状态ontouchend 。 但似乎并不是这样。 聚焦另一个元素不会消除hover状态。 手动点击另一个元素,但我似乎无法触发在JavaScript中。 我find的所有解决scheme似乎都不完善。 有没有完美的解决scheme?
我有一个使用Theme.Dialog风格的活动,这是一个浮动的窗口在另一个活动。 但是,当我在对话框窗口(在后台活动上)之外单击时,对话框closures。 我怎样才能阻止这种行为?
我一直在这个问题上磕头,我想了一下。 我想回到社区,因为我从这个网站得到了很多帮助:)。 我试图从一个UITableView项目复制到另一个UITableView和我在网上看到有关如何做到这一点的信息已经粗略充其量。 我自己想清楚了,所以我会描述一下我的小build筑。 掌握UIView UIView与UITableView 自定义UITableViewCell 被复制的自定义UIView(在我的情况下是Person对象) UIView与UITableView 自定义UITableViewCell 被复制的自定义UIView(在我的情况下是Person对象) 我在UITableView中拥有的对象是我想从一个表中拖放到另一个表中的对象。 我最困难的是弄清楚如何将物品从表中popup,然后用一个平滑的动作拖动它。 时间最长,为了执行操作,我需要两个触摸。 从Person对象开始,这是一个包含图像的简单对象。 当发生拖动时,我必须实现自己的touchesMoved方法来改变Person的中心位置。 -(void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{ if( m_moveable == YES ){ UITouch *touch = [touches anyObject]; CGPoint location = [touch locationInView:self.superview]; if( 0 < location.x-50 && location.x+50 < 768 ){ if( 0 < location.y-50 && location.y+150 < 1004 ){ self.center […]
我正在开发一个非常不同的用于触摸的界面(当你点击时你的手指隐藏了屏幕)和鼠标(很大程度上依赖于hover预览)来开发一个web应用程序(而不是一个有趣的文本页面的网站)。 我怎么能检测到我的用户没有鼠标给他提供正确的界面? 我打算为鼠标和触摸(如一些笔记本电脑)的人留下一个开关。 浏览器中的触摸事件function实际上并不意味着用户正在使用触摸设备(例如,Modernizr不会剪切它)。 如果设备有鼠标,正确回答问题的代码应该返回false,否则返回true。 对于使用鼠标和触摸的设备,它应该返回false(不能触摸) 作为一个侧面说明,我的触摸界面也可能适用于仅键盘的设备,所以更多的是缺乏鼠标,我期待检测。 为了使需要更清楚,下面是我期待实现的API: // Level 1 // The current answers provide a way to do that. hasTouch(); // Returns true if a mouse is expected. // Note: as explained by the OP, this is not !hasTouch() // I don't think we have this in the answers already, that why I […]
我发现一个类似的问题 ,但我试图检测和识别用户触摸哪个Sprite,我不知道该怎么做。 这是我的变数: var sprites: [[SKSpriteNode]] = [[SKSpriteNode(imageNamed: "a"), SKSpriteNode(imageNamed: "b")], [SKSpriteNode(imageNamed: "c"),SKSpriteNode(imageNamed: "d")]] 这个想法是确定spriteNode,然后将其replace为其他sprite或更改颜色,但我不知道如何使用spriteNodes这个matrix做到这一点,我猜测它的第一步是识别精灵。 我真的很感谢你的帮助! 谢谢!
我基本上是想从类似系统覆盖的东西中获取所有的触摸事件数据,基于这个触摸数据移动我的精灵,然后允许OS /主屏幕/浏览器根据数据进行操作(反之亦然)。 我发现了类似的问题,但是没有任何东西可以引导我, 获取正在接收所有触摸事件的视图 (已实现,结果如下) 创build一个系统覆盖窗口(总是在最上面) 我可以做什么: 我可以抓住所有的触摸事件,并通过移动我的精灵,而不是让操作系统/主屏幕/浏览器看到任何触摸事件,或者,也可以让触摸事件通过,只获得“TOUCH_OUTSIDE”为我的应用程序采取行动。 我未达到的目标: 我不能为了我的生活找出一个办法来处理数据。 我能想到的唯一的方法,我不能实现的是:拦截我的APP中的数据,并将其传递到OS / homescreen /浏览器来使用允许操作系统/主屏幕/浏览器首先获取数据,然后以某种方式获取信息的callback允许操作系统/主屏幕/浏览器获取数据,对数据采取行动,并轮询他们的滚动/位置值,以便在我的APP中对其执行操作。 我担心这是不可能的,我想我现在在某些文档中读到一些我现在找不到的文档:“这是全部或者全部,或者你的观点得到所有事件,或者没有一个” (为了避免混淆,我并不是说我有两个意见,我的意思是我有一个视图,通过覆盖OS / homescreen / browser的活动/服务来控制,如果你愿意的话,就像一个玻璃窗。 感谢您提供任何有用的信息,非常感谢! [更新]在下面发表我自己的文件,以免混淆。
当父视图的userInteractionEnabled = NO时,即使其userInteractionEnabled属性设置为YES,其子视图也不会接受触摸事件。 有什么办法仍然可以在子视图中触摸事件?
在HTML网站上,你有一个像这样的固定的元素: <div id="fixed"> <p>Some content</p> </div> 它有这个CSS: #fixed { height:150px; position:fixed; top:0; left:0; z-index:10000; } 当您在移动设备(或任何启用了触摸屏的设备)上查看此页面,并捏住屏幕进行放大时,固定元素会随着所有其他内容(变大)一起放大。 当你放大足够的距离,它变得如此之大,几乎完全覆盖了它下面的所有内容。 一个实际的用例将是一个UI,就像顶部的固定导航栏,或者屏幕angular落的浮动button。 你怎么能阻止单个元素在浏览器中resize,并始终保持相同的大小?