2012-05-12 13 views
2

jQuery UIダイアログに関数を追加したいと思います。 jQuery UI Dialogのソースコードを使って実際に.jsファイルをダウンロードして編集することなく、その作業をしたいと思います。別の.jsファイルからこれを行うことは可能ですか?別の.jsファイルからjQueryのダイアログに関数を追加することはできますか?

さらに説明します。カスタム関数を追加したいとしましょう。 "func1"。私はそれをコード化した後、私はこのようにそれを呼び出すことができる必要があります:

($"#dialog").dialog("func1"); 

は、元のjQueryのダイアログのソースコードを編集せずにその可能ですか?

答えて

0

は、私がテストしていませんが、私はそれが動作するはずだと思う:私はこの記事からそれを考え出した

(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); 

D:

$.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... 
     } 
    }; 
}());​ 
+0

は、残念ながら私が「捕捉されないでSyntaxErrorを得る:(働いていない:予期しないトークン不当 " – xx77aBs

関連する問題