私のタイトルは少し不明瞭かもしれません。たとえば、私はこのコードを持っています:
$('#element').image_resize_crop();
ある時点で、私が書いているimage_resize_cropプラグインは画像のプリロードを終了します。そもそも関数を呼び出したスクリプトにそれを戻すにはどうすればよいですか?
ありがとう!
私のタイトルは少し不明瞭かもしれません。たとえば、私はこのコードを持っています:
$('#element').image_resize_crop();
ある時点で、私が書いているimage_resize_cropプラグインは画像のプリロードを終了します。そもそも関数を呼び出したスクリプトにそれを戻すにはどうすればよいですか?
ありがとう!
trigger
サブスクライブしてコードを実行できるカスタムイベントのいずれかを実行できます。
$(elem).trigger('preloadComplete');
そして彼らはそれを使うことができます
$('#element').on('preloadComplete',function(){
// do what they want
})
または、oncomplete
このようなプラグインの設定としてハンドラーを受け取ります
$('#element').image_resize_crop(function(){
});
または設定オブジェクトの一部として
$('#element').image_resize_crop({
onComplete: function(){
}
});
そして、そのコールバックにデータを渡したい場合は、このように指示することができます
$('#element').image_resize_crop({
onComplete: function(data){
// utilize data passed from plugin
}
});
そして、画像のプリロードが完了したら、その関数を呼び出します。
プラグインコードでは、次のように呼び出すことができます
settings.onComplete.call(this,arg1,arg2);
this
そのonComplete
関数がその内部で変数として取得するものはどこthis
にあり、arg1、arg2は引数として取得する値です。
apply
メソッドも使用できます。