Problème d' "interférence" entre 2 codes Js

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Problème d' "interférence" entre 2 codes Js

Message par Erwan Narcos le Mar 21 Avr 2015 - 15:22

Détails techniques


Version du forum : phpBB2
Poste occupé : Administrateur
Navigateur(s) concerné(s) : Mozilla Firefox, Google Chrome
Personnes concernées par le problème : Tous les utilisateurs
Problème apparu depuis : Nouveau code JS
Lien du forum : http://ecoledesmarchombres.1fr1.net

Description du problème

Bonjour,

Je viens vers vous aujourd'hui car je rencontre un problème.

J'aimerais ajouter un "sélectionner le code" sur les balises de mon forum. J'ai suivi le tuto à cet effet à la lettre.
Cependant, il y a un soucis !

J'ai mis un certain temps à trouver pourquoi cela ne fonctionnait pas : en effet, apparemment il y aurait des interférences entre le JS pour le code, et le JS pour les infobulles. Je n'y connais rien en JS du coup je ne trouve pas ce qui ne va pas.

Voici mon JS pour les balises sélectionner le code :
Code:
        function selectCode(a){
         a=$(a).closest("dl").find(".cont_code,code")[0];if(window.getSelection){var c=window.getSelection();if(c.setBaseAndExtent)c.setBaseAndExtent(a,0,a,a.innerText.length-1);else{window.opera&&a.innerHTML.substring(a.innerHTML.length-4)=="<BR>"&&(a.innerHTML+=" ");var b=document.createRange();b.selectNodeContents(a);c.removeAllRanges();c.addRange(b)}}else document.getSelection?(c=document.getSelection(),b=document.createRange(),b.selectNodeContents(a),
        c.removeAllRanges(),c.addRange(b)):document.selection&&(b=document.body.createTextRange(),b.moveToElementText(a),b.select())}
       
        $(function(){
            $("dl.codebox:not(.spoiler,.hidecode)  > dd.code, dl.codebox:not(.spoiler,.hidecode)  > dd > code").closest("dl").find('dt').append('<span onClick="selectCode(this)" class="selectCode">Sélectionner le contenu</span>');
        });

Et voici le JS pour mes infobulles :
Code:
document.onmousemove = suivre_souris0;
var contenu
function pop0(contenu)
{
document.getElementById("bulle").innerHTML = "+contenu+";
}
function suivre_souris0(e)
{
if (navigator.appName=="Microsoft Internet Explorer")
{
var x = event.x + document.body.scrollLeft;   var y = event.y + document.body.scrollTop;
}
else
{
var x =  e.pageX;var y =  e.pageY;
}
document.getElementById("bulle").style.left = x + decal_x; document.getElementById("bulle").style.top  = y + decal_y;
}
function disparaitre0()
{
document.getElementById("bulle").innerHTML = '';
}

Merci d'avance pour votre aide.

Erwan Narcos
**

Messages : 61
Inscrit(e) le : 31/07/2009

http://ecoledesmarchombres.1fr1.net
Erwan Narcos a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Problème d' "interférence" entre 2 codes Js

Message par [Nihil] le Mar 21 Avr 2015 - 16:11

Coucou Smile

Dans le code des infobulles, si tu ajoutes un point virgule à la fin de la deuxième ligne, c'est mieux ?
Comme ceci :
Code:
var contenu;

[Nihil]
# Tropactif #

Messages : 1155
Inscrit(e) le : 10/12/2009

http://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Problème d' "interférence" entre 2 codes Js

Message par Erwan Narcos le Mar 21 Avr 2015 - 16:18

Bonjour,

En effet, c'est mieux ! Mais ça a fait planter un autre code JS du coup u_u

Après plusieurs essais, je viens de trouver LES soucis (oui, il y en avait plusieurs en fait!), des erreurs dans les JS qui ne sont pas facilement identifiable pour un noob comme moi !
( soucis de variable dans l'un, de ";" dans l'autre, et finalement pas de soucis dans le dernier).

Merci pour cette piste fructueuse !

Erwan Narcos
**

Messages : 61
Inscrit(e) le : 31/07/2009

http://ecoledesmarchombres.1fr1.net
Erwan Narcos a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Problème d' "interférence" entre 2 codes Js

Message par [Nihil] le Mar 21 Avr 2015 - 16:21

Contente d'avoir pu t'aider à trouver la bonne piste et bravo pour tes efforts, c'est pas facile quand on n'y connait rien Smile

[Nihil]
# Tropactif #

Messages : 1155
Inscrit(e) le : 10/12/2009

http://forum.forumactif.com
[Nihil] a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut


Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum