(javascript) marche avec IE mais pas Chrome
guiguidu85
-
guiguidu85 -
guiguidu85 -
Bonjour,
Je suis actuellement en train de faire un éditeur de message en BBCode pour un site web, et j'ai opté pour une interface avec des boutons cliquables effectuant une fonction javascript. Après essais du code, il fonctionne sous Internet Explorer mais pas sous Google Chrome. J'ai vérifié plusieurs fois et malheureusement, le code ne s'exécute pas.
Voici le code:
Merci d'avance pour votre aide,
Guiguidu85
Je suis actuellement en train de faire un éditeur de message en BBCode pour un site web, et j'ai opté pour une interface avec des boutons cliquables effectuant une fonction javascript. Après essais du code, il fonctionne sous Internet Explorer mais pas sous Google Chrome. J'ai vérifié plusieurs fois et malheureusement, le code ne s'exécute pas.
Voici le code:
function bbcode(startTag, endTag)
{
var field = $('#forum_texte');
var scroll = field.scrollTop;
field.focus();
if (window.ActiveXObject) {
var textRange = document.selection.createRange();
var currentSelection = textRange.text;
} else {
var startSelection = field.value.substring(0, field.selectionStart);
var currentSelection = field.value.substring(field.selectionStart, field.selectionEnd);
var endSelection = field.value.substring(field.selectionEnd);
}
if (window.ActiveXObject) {
textRange.text = startTag + currentSelection + endTag;
textRange.moveStart("character", -endTag.length - currentSelection.length);
textRange.moveEnd("character", -endTag.length);
textRange.select();
} else {
field.value = startSelection + startTag + currentSelection + endTag + endSelection;
field.focus();
field.setSelectionRange(startSelection.length + startTag.length, startSelection.length + startTag.length + currentSelection.length);
}
field.scrollTop = scroll;
}
Merci d'avance pour votre aide,
Guiguidu85
1 réponse
-
Hello,
Tu utilises un window.ActiveXObject, c'est un objet internet explorer qui ne tourne que sous ce navigateur.
-
En effet, mais c'est justement pour vérifier si le navigateur est IE. Et le code censé être lu par Chrome est juste après. J'ai même essayé de supprimer la condition pour voir si c'était le code conçu pour les autres navigateur qui ne fonctionnait pas, et malgré cela, le code ne s'exécutait pas correctement.
Selon le debugger de script, j'ai cru comprendre que le problème venait de la fonction substring et de l'attribut length mais je n'ai pas réussi à corriger le code. -
-
-
-
-