我创建了两个插件(A和B),其中插件B依赖于插件A。
在插件A中,我使用jquery ui对话框进行用户交互,这很好。
附属国:
插件A是一个文件浏览器。
单击按钮将打开一个对话框
用户可以选择文件的窗口
与WordPress Post相关。插件A
加载使用
对话框。
现在我尝试使用插件B中的对话框,我得到一个错误:
(this.uiDialogTitlebarCloseText = c("<span/>")).addClass("ui-icon ui-icon-closethick").text(m.closeText).appendTo is not a function
插件B
我用非常简单的代码进行测试:
// Javascript code from custom_plugin.js
jQuery(document).ready(function() {
jQuery('#dialog').dialog();
});
// Code from my custom_plugin.php
<div class="icon32" id="icon-tools"><br></div>
<h2>Gallery manager</h2>
<div id="poststuff" class="metabox-holder">
<div id="post-body">
<div id="post-body-content">
<div id="dialog" title="File browser"> This is a dialog.</div>
</div>
</div>
</div>
我不知道为什么会出现这个错误。关于如何解决这个问题有什么建议吗?
插件A
这是我在插件A中使用的代码。我在不与插件A交互的情况下得到上述错误。插件A的脚本只是正常加载。
jQuery("#fileBrowser").dialog({
title: "File browser",
modal: true,
autoOpen: false,
height: 700,
width: 800,
open: function() {
jQuery("#fileBrowser").load("../wp-content/plugins/wp-filebrowser/fileBrowser.php", function() {
// Clear input / feedback text when entering new folder name
jQuery('#newDirDialog input[type=text]').focus(function() {
jQuery(this).val('');
jQuery('.newDirFedback').fadeOut(function(){ jQuery(this).empty(); });
});
// Initialize create new dir dialog window
jQuery("#newDirDialog").dialog({
autoOpen: false, modal: true, title: "New dir"
});
});
}
}
);
//Open dialog box on click from WP admin
jQuery('.addImage').click(function() {
imageUrlInputBox = jQuery(this).siblings(":text");
imagePreviewLink = jQuery(this).siblings("a");
jQuery("#fileBrowser").dialog("open");
});