相关疑难解决方法(0)

推荐使React组件/ div可拖动的方法

我想制作一个可拖动的(也就是说,可以通过鼠标重新定位)React组件,它似乎必然涉及全局状态和分散的事件处理程序.我可以用脏的方式,在我的JS文件中使用全局变量,甚至可以将它包装在一个漂亮的闭包界面中,但我想知道是否有一种方法可以更好地与React相结合.

此外,由于我之前从未在原始JavaScript中完成此操作,因此我想看看专家是如何做到这一点的,以确保我已经处理了所有角落案例,特别是与React相关的案例.

谢谢.

javascript reactjs

82
推荐指数
8
解决办法
9万
查看次数

移动Safari(iPad,iPod,iPhone)中的原生HTML5拖放?

我已经成功实现了本机HTML5 Drag and Drop,用于在页面内移动HTML元素(只是说,从一个地方到另一个地方的div,与任何与主机操作系统文件交互无关).这在PC上的Chrome和Safari中运行良好但我无法在iPad的Safari中启动拖动操作.

到目前为止我发现了这个:

使用JavaScript拖放

Safari,Dashboard和基于WebKit的应用程序支持自定义HTML页面中拖放操作的行为.

注意:此技术仅在桌面版Safari上受支持.对于iPhone OS,请使用DOM Touch,如处理事件(Safari Web内容指南的一部分)和Safari DOM Additions Reference中所述.

在这里.但它已经过时了(2009-06-08).

Doe有谁知道在Mobile Safari中是否可以使用原生 HTML5?(我不希望javascript框架像jQuery UI这样的解决方案).

谢谢!

iphone html5 drag-and-drop mobile-safari ipad

18
推荐指数
3
解决办法
5万
查看次数

使用 JavaScript 确定平板电脑上的触摸位置

我有一个名为“元素”的对象。如果有人触摸平板电脑,我想返回触摸位置相对于对象的 x 和 y 坐标,即对象的左上角具有坐标 x=0 和 y=0。

我知道如何在台式机上实现这一点:

$(function() {
$(document).mousedown(function(e) {
  var offset = $("#element").offset();
  var relativeX = (e.pageX - offset.left);
  var relativeY = (e.pageY - offset.top);
  alert(relativeX+':'+relativeY);
  $(".position").val("afaf");
});
});
Run Code Online (Sandbox Code Playgroud)

所以我猜应该用“touchstart”代替“mousedown”这个词。但是,它仍然不起作用。

如何更改上面的代码,使其适用于带有“touchstart”而不是“mousedown”的平板电脑?

javascript position touch tablet touchstart

12
推荐指数
2
解决办法
1万
查看次数