当前位置: 首页 > 知识库问答 >
问题:

jQuery UI拖动时文本元素不移动

鱼浩荡
2023-03-14

我在一个SVG中有一个text元素,我已将jQuery ui应用到该元素中。每当我试图拖动它时,顶部和左侧的CSS属性就会如您所期望的那样发生变化,然而,元素本身并没有移动--它只是停留在原地。

这违背了我所理解的关于定位的一切。它似乎完全忽视了“上”和“左”的规则。

然而,情节变得更加浓重。

我还在同一svg中对图像应用了ui-draggable,它在这方面工作得很好。当我拖动它的时候,它会像预期的那样移动。

HTML如下所示:

<svg id="k" width="220" height="440" preserveAspectRatio="none">
    <image xlink:href="http://u.r.l/media/1353519179-9178.png" width="220" height="440" preserveAspectRatio="none" x="0" y="0" style="position: relative; left: 2px; top: 3px;" class="ui-draggable" transform="rotate(0,112,223) translate(2,3)"></image>
    <text id="svgtxt" x="0" y="0" style="position: relative; left: 101px; top: 118px;" class="ui-draggable" transform="rotate(0,101,118) translate(101,118)">Hello, world!</text>
</svg>

JavaScript如下所示:

// ...

$("#k image").draggable({
    refreshPositions : true
});

// Make the text element draggable
$("#k text").draggable({
    refreshPositions : true
});

// ...

共有1个答案

雷硕
2023-03-14

svgtext元素对position没有任何作用,因为它遵循svg呈现模型,而不是CSS框模型。有关svg内容中支持的属性列表,请参阅svg规范。

如果 片断内联在html中,您可以在整个片断上设置 position,因为在这种情况下,它是由CSS布局的。

 类似资料:
  • 如何在拖动时更改可拖动元素的文本,我有来自cdk/拖放库的代码片段。它为在拖动时捕捉事件提供参数。我可以通过本机元素进行更改,但它会更改所有样式,而且我还需要在dragover或其他操作上设置另一个事件。如果要在拖动元素上放置随机文本,有哪些选项? 在Html 在TS

  • 本文向大家介绍JavaScript实现移动端拖动元素,包括了JavaScript实现移动端拖动元素的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了JavaScript实现移动端拖动元素的具体代码,供大家参考,具体内容如下 实现效果: 请切换到移动端页面查看! 代码实现: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 我正在使用本机拖放html5 api开发拖放界面。我们已经在其他部分使用了jQuery拖动,但是它在这个特定部分的表现很差,所以我们使用原始的JavaScript。 本质上,标记看起来像这样... 我为“dragstart”创建一个addEventListener并运行以下函数 它将我的类完美地应用于原始元素,但我似乎不能移动原始元素。浏览器创建克隆/幽灵图像...我看到你可以创建自己的图像显示,

  • 问题内容: 总览 我具有以下HTML结构,并且将和事件附加到了元素上。 问题 当我将文件拖到时,事件将按预期触发。但是,当我将鼠标移到子元素(例如)上时,会为该元素触发该事件,然后为该元素触发该事件。 如果我再次将鼠标悬停在该元素上,则再次触发该事件,这很酷,但是随后为刚刚剩下的子元素触发了该事件,因此执行了该指令,这并不酷。 此行为有问题的原因有两个: 我只附加&,所以我不明白为什么子元素也要附

  • 你好,堆栈溢出,目前正在处理一个需要拖动元素的任务;不是本机API所做的图像拖动,而是拖动实际的元素。元素应该显示一个要删除的位置框,并在将其拖过一个区域时更改其自身的内部内容,该区域将在删除时删除该元素。到目前为止,我发现了这个有用的指令,帮助我做到这一点https://xieziyu.github.io/angular2-draggable/#/usage/basic 问题是,一旦元素通过某个

  • 我有一个xml。我想要元素