是否有任何使用jQuery编写的函数的约定,这些函数将从子文档(即<iframe>
内)调用到父文档?
关于在my question yesterday中使用iFrame
,关于在jQuery UI .dialog
中使用iframe
...我需要window.parent.$("#myDiv").dialog("option", "height", 180).dialog("option", "width", 300);
内的页面来改变大小特定时间的对话。
我已经有了这个工作,子文档中有以下代码......
.dialog
但是,我认为如果代码(比那条线要复杂得多得多)包含在父文档中的原始function resizeDialog() {
$("#myDiv").dialog("option", "height", 180).dialog("option", "width", 300);
}
代码中,它会更清晰,更容易理解。
显然可以简单地在父文档中进行以下操作......
window.parent.resizeDialog();
...以及子文档中的以下内容
$("#myDiv")
但是,我想知道是否有任何约定将resizeDialog函数作为$window.parent.$("#myDiv").resize();
的一部分包含在内,以便用...之类的东西调用它。
function resizeDialog() {
$("#myDiv").dialog("option", "height", 180).dialog("option", "width", 300);
}
更新
我想我想问的问题是:
使用jQuery时,使用这样的函数是不可接受的......
{{1}}
如果是这样,那么具有可以从当前文档外部调用的jQuery函数的格式是什么?
答案 0 :(得分:0)
您需要为该
创建自定义jQuery插件 (function ($) {
// plugin definition
$.fn.resizeDialog = function () {
this.dialog("option", "height", 180).dialog("option", "width", 300);
}
})(jQuery);
如果上面的代码给您一些错误,您可以检查确切的语法here
<强>更新强>
如果只想将方法应用于jQuery对话框,那么可以在$.widget( "ui.dialog", { });
函数中编写函数。
例如。语法:
_resizeDialog : function() {// your code here}