からjQueryの関数を呼び出します!私は記事how to call function in jquery from javascriptを見ました。出来ますか?は、私はいくつかのjQueryコードを持っているJavaScriptの
答えて
$()
に渡すクロージャ(関数)内の関数を定義するだけでは、jQuery fn
オブジェクトに配置するための操作は何も実行されません。これを行うには、明示的にそれをしなければならない。
$.fn.someFunc = someFunc;
通常、は$()
にコールバックの中にこれをしないでしょう、あなたは以前にそれを行うだろう。プラグインはこれを実行して機能を追加します。これはすでにのより前にDOMが用意されているはずです。 |
jQuery(function($) {
$(".foo").green();
});
Live example:あなたは準備ができてDOMから使用することがあります
(function($) {
$.fn.green = green;
function green() {
return this.css("color", "green");
}
})(jQuery);
...:一例として
は、ここに他愛ないプラグインで、緑色のテキストに変わりますLive source
$.fn
から直接ではなく、jQueryインスタンスからの呼び出しであることに注意してください。
簡単な説明をありがとう。 – zhihong
someFunc
は "jQuery関数"ではなく、(jQuery)DOMContentLoaded
イベントハンドラ内で定義された関数です。
範囲外であるため、外部からアクセスすることはできません。ただ、負荷ハンドラの外にそれを宣言し、それがアクセスできるようになります:
$(function(){
// nothing here , but you can call someFunc() if you want
});
function someFunc(){
/*do something*/
};
function test(){
someFunc(); // works!
}
をjqueryのでは
$.fn.someFunc = myFunc;
function myFunc()
{
// Code here
}
無地のJavaScriptの
function myObj()
{
// Code here
}
var obj= new myObj();
obj.prototype.someFunc=myFunc;
function myFunc()
{
// Code here
}
に似ているそれは、新しいを追加するだけの方法ですプロパティをオブジェクト(プロトタイプの継承)に、jqueryのfnはjavascriptのプロトタイプのエイリアスに過ぎません。私は
$.fn.someFunc = myFunc;
を使用して、以前のjQueryオブジェクトにで追加した私の「sumFunc」メソッドを呼び出すには、私は
$('someElement').someFunc();
を行うことができますし、この行は(taht関数を呼び出すと「someElement」に何かを行います私は何もしませんでしたが)、それが十分明確であることを望みます。 T.J.を見てください。 Crowderの答え、それはあなたにいくつかのより多くの理解を与えるでしょう。
* "... jqueryのfnはjavascriptのプロトタイプの別名です..." *あなたは 'jQuery 'を意味します。prototype'(jQueryはインスタンスを作成するために 'new jQuery.fn.init'を使用するため、' jQuery.fn.init.prototype'から参照されることも奇妙です)。 –
はい、これを見てくださいhttp://stackoverflow.com/questions/1755080/why-jquery-do-this-jquery-fn-init-prototype-jquery-fn、私は私の理解に間違っていますか? –
'@Sheikh Heera':私はあなたの質問を理解していません。すべてのリンクは、私が上記のことを繰り返す(不完全に)。 "javascript"!= "jquery"に注意してください。 –
- 1. 私はいくつかのMVCコードを持ってjQueryの
- 2. アイテムは、私はいくつかのjQueryを持っている
- 3. ポジショニング私はいくつかのhtmlコード、持っているCSS
- 4. ReferenceListPropertyのNumericPropertyは、私はいくつかのコードを持っている
- 5. バッファのソケットは、私はいくつかのコードを持っている問題
- 6. は、AJAXは:私は、次のJavaScript/jQueryのコードでウェブサイトを持っている
- 7. クラッタは、私はいくつかのコードを持っているブレークポイント
- 8. 正規表現は、私はいくつかのコードを持っている
- 9. 私はいくつかのコード持って
- 10. は、私はこのようないくつかのコードを持っていると仮定jQueryの
- 11. は、私はいくつかのHTML出力コード、例の一部持っているいくつかのテキスト
- 12. 私は次のコードを持っているいくつかの値
- 13. jqueryのは、私は次のコードを持っているのdiv
- 14. は、私はいくつかの疑問を持っている
- 15. jqueryのは、私はいくつかの評価コードを持っている添加元素
- 16. は、私はこのコードを持っているのJavascript
- 17. は、私はこのコードを持っているjQueryの
- 18. は、私はこのコードでボタンを持っているのjQuery
- 19. は、私は次のコードを持っているjQueryのコールバック
- 20. は、私はこのコードを持っているトップjQueryの
- 21. jQueryのは、私は次のコードを持っている
- 22. ( ")私は次のコードを持っているはずのjQuery
- 23. は、私はこのコードを持っているjQueryの
- 24. は、私はこのようないくつかのjQueryコードを持ってjQueryの
- 25. セット私はいくつかのコード(アンドロイドソース)を持っている不透明度
- 26. は、私がここにいくつかのコードを持っている
- 27. Javascriptが:私はこのコード(jqueryの)を持っているのonClick
- 28. Python。私はいくつかのコード持っている。このループ
- 29. JavaScriptは、私は次のコードを持っている属性
- 30. は、私は、次のJavaScriptコードを持っている未定義
'someFunc'は単に別の関数の中で定義された関数です...それはjQueryとは関係ありません。 –