bonjour
dans le cadre d'une page dite "RIA" basé sur jQuery 1.7
j'ai un bloc constitué d'element drag n drop.

Mon idée consiste à utiliser le DOMElement de ce bloc et lui affecter des fonctions métier supplémentaires.
Pour cela j'ai créé une classe BlocManager telle que :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
var mon_ns = {};
mon_ns.BlocManager = function(DOMElement)
{
   // intégration du DOm element dans l'objet instancié
   $.extend(this, DOMElement);
 
   this.doSomething = function(){
       var child =  this.find('#otherElement').show();
       ...
    };
};
var myobject = new mon_ns.BlocManager($('#leBloc'));
myobject.doSomething();
sous Firefox et Chrome,
myobject est bien un objet jQuery qui référence le bloc, qui possède en plus la fonction doSomething().
Dans doSomething(), this.find est equivalent à $.find(), donc child est aussi un objet jQuery.
Jusque la c'est impeccable.

En revanche sous IE8, si je fais un console.log() de this.find(...)
il y a une erreur :
"cet objet ne gère pas cette propriété ou cette méthode".
1. auriez-vous une piste de solution compatible ?
1. jquery.extend() a til un bug connu sous IE8 ?
2. la creation d'un vrai plugin jQuery est elle la solution ?
genre $('#leBloc').BlocManager();

merci