我正在使用JQuery和Jquery UI創建一個包含自定義窗體的對話框。我有一個基本的對話框,它有一個附加到它的主體的工具。所以我的對話框的基本結構是JQuery UI框架>對話框> ToolBody>工具內容。.append()爲不同的參數類型產生不同的結果
Code:
ToolManager.prototype.showTool = function(tool){
var $container = $("#" + this.id);
var $tool = $("#" + tool.id);
var $toolBody = $("#" + this.toolBodyId);
$container.dialog({
resizable: false,
modal: true,
width: tool.width,
stack: true,
height: 'auto',
draggable: true,
close: this.tearDown,
open: this.setup
});
$tool.removeClass("hidden");
$toolBody.append($tool.html());
//$toolBody.append($tool);
$container.show();
};
這工作,儘管它需要重構,但是使用這種方法,我嘗試使用註釋掉前行:
$toolBody.append($tool);
這種方法肆虐在我的佈局混亂,造成附加的內容被阻止接收焦點。任何人都可以解釋追加Jquery對象和附加一個html字符串之間的區別嗎?或者爲什麼它以這種方式表現?
感謝解釋非常有用的信息。你爲什麼說它是一個可憐的克隆,我會注意到接收方法綁定? –
沒問題。這就是我們來這裏的原因,對吧? :) –