Vous êtes ici Forums
  |  Connexion
 Forums
HomeHomeForums DNNForums DNNDéveloppementDéveloppementUtiliser jQuery avec DNNNavUtiliser jQuery avec DNNNav
Précédente
 
Suivante
Nouveau message
30/07/2008 22:42
 

La nouvelle version du projet DotNetNuke WebControls a vu une partie de son API Javascript réecrite. Celle-ci entre en conflit avec un certain nombre de bilbiothèques JavaScript et nottament jQuery, une bibliothèque vraiment très pratique autant pour les développeurs que pour les intégrateurs. Cela pose réellement problème, puisque le menu disparaît dès que jQuery est déclaré. Or, saviez-vous qu'il existe une solution à cela ? Il suffit d'appeler la méthode jQuery.noConflict() juste après la déclaration de jQuery.
Ce qui donne :
< script type="text/javascript" language="javascript" src="http://code.jquery.com/jquery-latest.js" >< / script >
< script type="text/javascript" language="javascript" > jQuery.noConflict(); < / script >
< script type="text/javascript" language="javascript" src="un_plugin_ici_par_exemple.js" >< / script >

Le problème est créé par l'espace de nom partagé par Dnn et jQuery. En effet, le symbole $ est usé par chacun, et l'un remplissant l'autre avec ses propres fonctions, cela créé un petit objet corrompu.
Après cela, vous ne pouvez plus appeler une fonction jQuery de la sorte :
$( ' mon element ' ).show();
Mais plutôt comme cela :
jQuery( ' mon element ' ).show();

Si vous ne voulez vraiment pas vous passer du symbole $ dans vos fonctions, vous pouvez les inclure dans une déclaration locale plutôt que globale, comme cela =

jQuery(function($) {
$( ' mon element ' ).show();
} ) ;

 
A noter également que la fonction noConflict peut-être surchargée. mais je vous laisse découvrir cela dans la documentation jQuery : http://docs.jquery.com/Core/jQuery.noConflict

seb

 
Nouveau message
31/07/2008 10:27
 

Merci pour la précision.

Juste une question : la version téléchargeable est la 1.5, or le site webcontrols.dnn.com indique être en version 2.0...

Où peut-on trouver la dernière version ?

Merci !

 
Nouveau message
31/07/2008 12:13
 

Salut,

la béta des nouvelles dll est disponible à l'une de ces 2 adresses (bien lire les explications avant d'effectuer le remplacement):

http://www.codeendeavors.com/Downloads.aspx

http://www.codeplex.com/codeendeavortemplate/Release/ProjectReleases.aspx?ReleaseId=9057

 


Jesse
Société de conseil et de service en 
informatique et systèmes d'information
 
Nouveau message
25/08/2008 21:46
 

Merci encore Seb car j'ai connu ce problème, j'avais donc oublié l'idée mais là je crois bien lui donner un autre essais !

 
Précédente
 
Suivante
HomeHomeForums DNNForums DNNDéveloppementDéveloppementUtiliser jQuery avec DNNNavUtiliser jQuery avec DNNNav