我想在jQuery UI Dialog中添加一个函数。我想这样做而不用jQuery UI Dialog源代码实际下载.js文件并进行编辑。是否可以从单独的.js文件中执行此操作?
进一步说明:假设我要添加自定义函数,例如“FUNC1”。在我编码之后,我应该可以这样称呼它:
($"#dialog").dialog("func1");
如果不编辑原始的jQuery Dialog源代码,是否可以?
答案 0 :(得分:2)
好的,我终于找到了答案:D
(function($){
var _init = $.ui.dialog.prototype._init;
//Init
$.ui.dialog.prototype._init = function() {
var self = this;
_init.apply(this, arguments);
//here you can do custom init
};
//Custom Dialog Functions
$.extend($.ui.dialog.prototype, {
func1: function() {
alert("f1");
},
func2: function() {
alert("function 2");
}
});
})(jQuery);
我已经从这篇文章中找到了它:
答案 1 :(得分:0)
我没有测试过,但我认为它应该可行:
$.fn.dialog = (function() {
var cached_function = $.fn.dialog;
return function() {
if (arguments[0] !== "func1")
cached_function.apply(this, arguments);
else {
// Do what you want here...
}
};
}());