Je suis en train de caisse un curseur panorama comme un plugin jQuery, et j'ai le code suivant ..jQuery Plugin: Obtenez le « cet » objet dans d'autres fonctions
$.fn.panorama = function(settings) {
var myPanorama = this;
..
this.mousedown(function(e){
//do stuff
$(this).css... //this all work
}
//Call mouseup on document in case user lets go of mouse outside draggable object
$(document).mouseup(function(){
$(myPanorama).easeDragging(); //works but probably not the way to do it
this.easeDragging(); //ideal but refers to wrong object
});
}
Ma question est de savoir comment puis-je parle à l'objet "this" dans l'appel $ (document) .mouseup?
Comme il pense que "ceci" est le document lui-même et non l'objet attaché au plugin. Pour l'instant, je fais juste une variable et ça marche mais il doit y avoir un meilleur moyen!
merci!
Vous pouvez également utiliser '$ .proxy()' ici, par exemple. '$ .proxy (function() {this.easeDragging();}, ceci)' :) –
@Nick: Une fonction jQuery très utile que je ne connaissais pas, merci :-) –
Excellente réponse, j'apprends quelque chose nouveau chaque jour! – Totomobile