问题标签 [jquery-clone]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 保持 jQueryUI 对话框内容可见,为对话框内容添加新维度
使用jQueryUI 对话框的代码片段是:
HTML 标记:
当我单击“upload_photos”div 时,图像会显示在对话框窗口中,但会从背景页面消失。
如何同时保持它在后台页面中可见?
当图像出现在对话框中时,我想以不同的尺寸(宽度和高度)显示它。怎么做?
编辑:
多次单击“upload_photos”div 会创建多个对话框。但我不想为以后的点击创建任何对话框。怎么做?
编辑2:
我在“upload_photos” div 的图像下方有一个按钮。我使用克隆(var dialog = $(this).clone();
)。我也在那个对话框中得到那个按钮。但是,如果我单击按钮,则标记从网页中的图像开始,而不是在对话框的图像上。
解决办法是什么?
编辑3:
借助 jquery 的标记脚本在 'upload_photos' div 上进行选择。当它被克隆到对话框时,脚本仍然在网页中找到选择,而不是在对话框中。这可能与事件处理有关(?)或什么?我试过了
但无法解决。如何将jquery选择的注意力转移到对话框窗口上?
编辑4"
如果我使用var dialog = $(this)
而不是,var dialog = $(this).clone(true);
则在对话框上进行标记,但图像会从网页中消失。
jquery - 如何克隆 HTML 块?
我正在为 Jquery 克隆而苦苦挣扎。我可以克隆一行 HTML,但我不知道如何克隆一个块。
我有这个块:
而且我需要生产更多的两个块,每次更改新块的属性以反映其位置。
关于我必须做什么才能获得该输出的任何线索?
jquery - 如何克隆节点,复制数据但不复制事件处理程序?
jQuery 的clone
函数如下所示:
.clone( [withDataAndEvents ] [, deepWithDataAndEvents ] )
withDataAndEvents:一个布尔值,指示是否应将事件处理程序和数据与元素一起复制。
deepWithDataAndEvents:一个布尔值,指示是否应复制克隆元素的所有子元素的事件处理程序和数据。
这两个参数都会影响data
和 events
。是否可以只保留数据而不保留事件?基本上,我的理想clone
功能如下所示:
.idealClone( [withData] [, withEvents ] [, deepWithData ] [, deepWithEvents ])
withData:一个布尔值,指示数据是否应与元素一起复制。
withEvents:一个布尔值,指示是否应将事件处理程序与元素一起复制。
deepWithData:一个布尔值,指示是否应复制克隆元素的所有子元素的数据。
deepWithEvents:一个布尔值,指示是否应复制克隆元素的所有子元素的事件处理程序。
有没有办法实现这一点?
注意我正在使用 1.8.1,但欢迎所有版本的答案
jquery - 当我在“每个”中“克隆”时,为什么会丢失原始元素?
我正在尝试制作自己的clone
功能,但遇到了问题。我可以自己使用 jQuery 的clone
函数而不会出现这样的问题:`
(或者,在行动中看到它:http: //jsfiddle.net/Shawn/dCm59/2/)
但是,如果我尝试使其适用于元素集合(添加each
),它将删除原始:
(或者,在行动中看到它:http: //jsfiddle.net/Shawn/dCm59/3/)
为什么第二个版本删除了原版?
jquery - jQuery UI 克隆的可拖动元素不可拖动
我在使用 jQuery UI 和克隆元素时遇到了一个奇怪的问题。尽管 jQuery UI 事件似乎被正确复制,但似乎这些事件仍然引用原始 DOM 对象,而不是克隆的对象。
这个 JS 小提琴显示了这个问题:http: //jsfiddle.net/XDrC5/
这是HTML:
和 Javascript:
单击克隆会正确复制下部框中的橙色方块,但尝试拖动新方块会导致原始方块移动。尝试调整新方块的大小根本没有任何作用。
当试图在克隆的元素上调用 jQuery UI 方法时,这会导致更大的问题。例如,.draggable("destroy");
在克隆之后调用实际上会从原始元素中删除可拖动元素,从而使新元素和旧元素都变为不可移动。
我不确定是否有办法解决这个问题,如果我只是太密集,或者这是一个不可避免的错误。任何帮助是极大的赞赏。
jquery - jQuery appendTo 只在第一次工作,然后替换
我正在尝试使用 jQuery 在表单末尾附加一个克隆的 div。以下是它的工作原理:
这第一次效果很好,我得到一个看起来像这样的 div:
但在那之后,该 div 被另一个 id 为“student-3”的 div 替换。student-3 应该是一个新的 div,而不是替换 student-2。有任何想法吗?
javascript - 为 DIV 中的元素生成带有 html 控件、动态 ID 和侦听器的克隆 div
我想复制一个 div 及其所有内容,以生成一个克隆的 div(例如,动态地向发票添加行)。我需要克隆 div 的内容,包括 html 控件、动态 ID 和 DIV 中元素的侦听器!
是否有捷径可寻?谢谢!
该代码有效,但它没有克隆整个 DIV 它还克隆文本框 ID 可以帮助我。
jquery - jquery克隆问题,修改id也改变了原来的选择器
在此代码示例中
我期待我的文档包含我的新克隆对象(带有 id attachment-deletion-unique_text
)以及$('#attachment-deletion');
但这不是我所看到的。据我所知,我并没有调用remove();
这些选择器,因此我相信修改clone()
'd 对象的属性也会影响原始对象
但是由于我认为克隆会进行深层复制,因此应该会发生这种情况,因此还有其他问题。我正在修改 id,所以这可能会让人感到困惑,因为有一段时间 DOM 中有两个具有相同 id 的对象,也许吧?
任何见解表示赞赏
jquery - 拖动时如何阻止jQuery元素被克隆?
我是一个对 jQuery 比较陌生的设计师,所以请多多包涵!
我已经组合了一个基于 jQuery 购物车模型的数据库查询创建程序。
本质上,用户将字段名称和布尔运算符拖到“购物车”区域并放下它们,从而创建可以转换为逗号分隔字符串并保存为查询的元素列表。拖动的元素实际上是原始元素的克隆。
购物车区域中元素的基本顺序是:
这样你最终可能会得到这样的字符串:
这与以下内容相同:
为了保持查询创建区域的逻辑顺序,一般在删除一个字段后所有字段都被禁用,从而限制用户拖动操作符;删除布尔运算符后,所有布尔运算符都将被禁用。否则,您可能会得到一个无意义的查询,例如:
当一个字段或运算符被删除时,它应该能够通过将其拖到垃圾箱 div 来删除。
同时,前一个元素不应再被删除——否则,用户可能会通过随机删除元素来对正在创建的查询造成严重破坏。
例如,其中“el”是一个被拖放的字段名称,一个“可删除”类作为 drop 函数的一部分被添加到其中,并从之前的列表元素中删除:
这部分工作正常,即可以删除最后删除的列表元素,不能删除以前的列表元素。
我遇到的问题是,如果用户将已被拖放到查询创建区域 [“购物车”] 的列表元素拖动,则会创建该列表元素的克隆。然后,可以拖动该克隆,从而创建另一个克隆。
由于原始放置事件在放置的字段名称或运算符之后附加了一个逗号[为了以逗号分隔的字符串结束],我认为拖动放置的字段正在重新创建初始放置事件?您可以看到,因为每次停止拖动时,每个克隆都会附加一个逗号。
如果我使“购物车” div 不可排序,我可以阻止拖放的元素在被拖动时被克隆——但是我不能将它们拖到垃圾箱:
所以——对不起我的啰嗦——总之,我需要帮助来防止拖放的元素在被拖动时被克隆,同时保持它“可删除”,以便可以将它拖到垃圾箱。
我有一个显示克隆问题的页面的完整工作版本:
第二页显示了“购物车”不可排序时的行为——该元素不能被拖动,因此不能被克隆,但它也不能被拖动到垃圾箱:
非常感谢任何帮助!