【发布时间】:2012-02-17 18:54:37
【问题描述】:
好吧,我知道 jquery 可以很简单地做到这一点,但我有点困惑是否应该使用 replaceWith、过滤器、html、文本、克隆等!
这就是我正在做的事情。我正在使用 jquery UI 选项卡,每当我创建一个新选项卡时,我都需要使用 dom 上另一个位置的 html,但在将其用于新选项卡之前稍作修改。所以它看起来像这样:
_$chatTabs = $("#dvChatManager").tabs({
selected: 0,
tabTemplate: "<li><a href='#{href}'>#{label}</a> <span style=\"position:absolute;right:0px;\" class='ui-icon ui-icon-close'>Remove Tab</span></li>",
add: function (event, ui){
var html = $('.dvChatBoxWrapper', $('#dvChat-' + _activeGID)).clone();
$(ui.panel).append(html);
initTabs();
}
});
所以在“添加”部分,您可以看到我克隆了另一个 div 并将其附加到面板。但在将其附加到面板之前,我需要清除变量 html 中的一些 div,并可能更改其他 html 内容。我对最好的方法有点困惑。我也愿意接受另一种使用 dom 上的其他 div 作为模板的方法!
【问题讨论】:
-
这是一个不完整的问题。
.divChatBoxWrapper里面有什么?根据应用程序的不同,最好有一个缓存的基本元素,每次都克隆它。
标签: jquery