如何实际实现拖动';n';在Windows 8下插入Javascript/Metro用户界面

如何实际实现拖动';n';在Windows 8下插入Javascript/Metro用户界面,javascript,drag-and-drop,windows-8,microsoft-metro,Javascript,Drag And Drop,Windows 8,Microsoft Metro,不知何故,我一定错过了像这样简单的东西的适当文档。通过谷歌进行搜索也不会产生有用的结果 所以,我想做的是:绘制一个矩形(div),使其可拖动,然后将其放置在其他地方,并进行适当的验证,确保放置点实际上是有效的 我将如何使用VisualStudio11 Beta提供的工具来实现这一点 到目前为止,我所发现的只是OnDraging事件,由于所提供的信息不足,它并没有真正的帮助 代码示例将是伟大的,我也可以生活与一些博客或类似的链接 编辑:通过触摸屏输入拖放,也就是说,不是通过“正常”鼠标交互。下面的

不知何故,我一定错过了像这样简单的东西的适当文档。通过谷歌进行搜索也不会产生有用的结果

所以,我想做的是:绘制一个矩形(div),使其可拖动,然后将其放置在其他地方,并进行适当的验证,确保放置点实际上是有效的

我将如何使用VisualStudio11 Beta提供的工具来实现这一点

到目前为止,我所发现的只是OnDraging事件,由于所提供的信息不足,它并没有真正的帮助

代码示例将是伟大的,我也可以生活与一些博客或类似的链接


编辑:通过触摸屏输入拖放,也就是说,不是通过“正常”鼠标交互。

下面的链接是IE博客中关于IE10中HTML5拖放的演练。IE10是Windows Web应用程序的引擎,因此它将在您的Windows 8应用程序中工作


刚刚收到一位微软员工的回复:这是一个bug:


因此,在修复该漏洞之前,您似乎真的必须自己动手。

直到并包括测试版(CP),我们能够使用dragstart、drag、Dragen事件,甚至在Metro中进行触摸输入。在较新的版本中,这已经停止工作(事件不再触发),看起来我们必须切换到MSPointerMove等人来处理触摸拖动。 从我创建的几个示例来看,独立IE似乎从未支持dragstart、drag和dragend for touch——换句话说,在beta Metro中,我的示例中可以使用touch drag,但在普通IE中无法使用相同的文件


关于下面提到的Microsoft员工的回答,我认为该错误与触摸拖动问题无关。

我不知道windows-8/metro ui的含义,但这是一个很好的起点:请参阅下面我的评论。只有在使用类似鼠标的指针时,设置draggable=true才有效。它不适用于基于触摸屏的输入。您必须观察触摸事件,而不是鼠标:touchstart、touchmove、touchend。另外,你应该在主体和preventDefault()上添加一个监听器,这样整个事情就不会发生变化了,只是注意到你的例子不是HTML5。事实上,我想摆脱一个自制拖放解决方案的麻烦。因为卢克·布鲁尔基本上就是这么做的。我是说,这篇文章是2006年的;)我试过了。在IE10中,FriedgeMagnets演示无法在触摸屏模式下工作(触笔和鼠标的工作方式与广告中的一样)。不能拖动元素,任何拖动动作都会滚动屏幕。类似地,一个仅由a组成的Metro应用程序实际上不会产生一个可拖动的div。