1

我正在创建一个 Web 应用程序,并且我有一些功能,用户可以将页面中的一些文本拖到他们想要的位置,如果他们单击保存按钮,下一页会在他们放置的位置显示相同的文本。它正在工作,但位置并不完美,与原来的位置略有不同。

我在这个 jsfiddle http://jsfiddle.net/rkumarnirmal/AmEeH/中实现了这样的功能

您可以看到#text-preview是原始文本,您可以将其拖动到所需位置。删除后,我想将#ttext-preview移动到删除#text-preview的相同位置。但是#ttext-preview位置没有改变。

我只想知道为什么该位置与我的 Web 应用程序中的原始文本放置位置略有不同。我尝试在 jsfiddle 中显示问题,但 jsfiddle 本身不起作用(我无法通过 jquery 动态更改#ttext-preview的 css top 和 left属性)。

有人可以指导我吗?

谢谢!

4

2 回答 2

1

我认为这是因为您在拖动过程中使用的边框。当您将其更改为背景颜色时,它可以正常工作:http: //jsfiddle.net/qvS2t/

如果您想继续使用边框,我会在非悬停的 tekst 上添加一些额外的填充,并在悬停活动时将其替换为边框。这是一个显示如何执行此操作的 jsfiddle:http: //jsfiddle.net/jdCAx/

于 2012-05-20T13:16:56.977 回答
0
  1. 最初 .position() 获得相对于父级的坐标!

  2. 另一件事可能是边框/边距/填充问题,这里有很多http://api.jquery.com/position/!您正在使用一个奇怪的悬停边框,这可能会改变位置,因为当您将元素悬停在它上面时,该元素不再位于 0,0 上

于 2012-05-20T13:15:37.533 回答