[awesomebb] Bouton sélectionner sur les codes

3 participants

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

Résolu [awesomebb] Bouton sélectionner sur les codes

Message par Seth J. Trevelyan Jeu 29 Déc 2022 - 23:06

Bonsoir ! J'ai un souci avec le tuto Bouton "Sélectionner le contenu" pour les balises de code dont le script ne fonctionne malheureusement pas sur AwesomeBB. En effet les balises de code n'ont pas la même structure que sur les autres versions et le tuto ne semble pas les prendre en compte... Quelqu'un aurait-il une version fonctionnant sur AwesomeBB ?

J'ai essayé de l'adapter moi-même mais ça ne fonctionne pas, sûrement parce que mes connaissances en javascript sont trop limitées Sad
Code:
function selectCode(e) {
    var s = $(e).closest("code").get(0), range, selection;
    var a = s, z = s;
    while(a.nodeType == 1 && a.childNodes.length) a=a.firstChild;
    while(z.nodeType == 1 && z.childNodes.length) z=z.lastChild;
    if (!$(a).is('.fixff')) {
        var fix = $('<span class="fixff"/>').insertBefore(a);
    } else {
      a = a.nextSibling;
    }
    if (document.body.createTextRange) {
        range = document.body.createTextRange();
        range.moveToElementText(s);
        range.select();
    } else if (window.getSelection) {
        selection = window.getSelection();
        range = document.createRange();
        range.setStart(a, 0);
        range.setEnd(z, z.nodeValue ? z.nodeValue.length : 0);
        selection.removeAllRanges();
        selection.addRange(range);
    }
};
$(function(){$("div.codebox").closest('p').append('<span onClick="selectCode(this)" class="selectCode">Sélectionner</span>')});


Dernière édition par Seth J. Trevelyan le Ven 30 Déc 2022 - 15:09, édité 1 fois
Seth J. Trevelyan

Seth J. Trevelyan
****

Féminin
Messages : 290
Inscrit(e) le : 05/02/2013

https://peekaboo-rpg.forumactif.com
Seth J. Trevelyan a été remercié(e) par l'auteur de ce sujet.

Résolu Re: [awesomebb] Bouton sélectionner sur les codes

Message par Milouze14 Ven 30 Déc 2022 - 8:23

Hello Seth J. Trevelyan,
il y a dû avoir une modification sur la version Awesomebb car il était fonctionnel au début!!

Ce script devrait fonctionner:

Code:
function selectCode(e) {
    var s = $(e).closest("div").find(".cont_code,code").get(0), range, selection;
    var a = s, z = s;
    while(a.nodeType == 1 && a.childNodes.length) a=a.firstChild;
    while(z.nodeType == 1 && z.childNodes.length) z=z.lastChild;
    if (!$(a).is('.fixff')) {
        var fix = $('<span class="fixff"/>').insertBefore(a);
    } else {
      a = a.nextSibling;
    }
    if (document.body.createTextRange) {
        range = document.body.createTextRange();
        range.moveToElementText(s);
        range.select();
    } else if (window.getSelection) {
        selection = window.getSelection();
        range = document.createRange();
        range.setStart(a, 0);
        range.setEnd(z, z.nodeValue ? z.nodeValue.length : 0);
        selection.removeAllRanges();
        selection.addRange(range);
    }
};
$(function(){$("div.codebox:not(.spoiler,.hidecode) ").find('p').append('<span onClick="selectCode(this)" class="selectCode">Sélectionner</span>')});


a++
Milouze14

Milouze14
***

Masculin
Messages : 147
Inscrit(e) le : 03/12/2021

https://le-site-milouze14.bbactif.com
Milouze14 a été remercié(e) par l'auteur de ce sujet.

Résolu Re: [awesomebb] Bouton sélectionner sur les codes

Message par Invité Ven 30 Déc 2022 - 9:12

Lastvisit a écrit:Hello Seth J. Trevelyan,
il y a dû avoir une modification sur la version Awesomebb car il était fonctionnel au début!!

Ce script devrait fonctionner:

Code:
function selectCode(e) {
    var s = $(e).closest("div").find(".cont_code,code").get(0), range, selection;
    var a = s, z = s;
    while(a.nodeType == 1 && a.childNodes.length) a=a.firstChild;
    while(z.nodeType == 1 && z.childNodes.length) z=z.lastChild;
    if (!$(a).is('.fixff')) {
        var fix = $('<span class="fixff"/>').insertBefore(a);
    } else {
      a = a.nextSibling;
    }
    if (document.body.createTextRange) {
        range = document.body.createTextRange();
        range.moveToElementText(s);
        range.select();
    } else if (window.getSelection) {
        selection = window.getSelection();
        range = document.createRange();
        range.setStart(a, 0);
        range.setEnd(z, z.nodeValue ? z.nodeValue.length : 0);
        selection.removeAllRanges();
        selection.addRange(range);
    }
};
$(function(){$("div.codebox:not(.spoiler,.hidecode) ").find('p').append('<span onClick="selectCode(this)" class="selectCode">Sélectionner</span>')});


a++

J'étais intéressé par cette fonction et oui, ça marche Smile

Merci.

Oui, j'ai remarqué que beaucoup de codes ne sont pas à jour pour AwesomeBB mais heureusement que nous sommes là pour les faire mettre à jour grâce à votre expertise Very Happy
Anonymous

Invité
Invité


Invité a été remercié(e) par l'auteur de ce sujet.

Résolu Re: [awesomebb] Bouton sélectionner sur les codes

Message par Seth J. Trevelyan Ven 30 Déc 2022 - 13:36

Pour ma part ça ne fonctionne toujours pas ? Je ne sais pas en quoi ma version awesomebb est différente mais mes balises codes ressemblent à ça en html :

Code:
<div class="codebox">
<p>Code:</p>
<code class="hljs markdown">UN CODE</code>
</div>

edit : je précise que ce qui ne fonctionne pas c'est l'affichage du bouton "sélectionner" au niveau du p, je n'ai rien du tout Visage réfléchissant
je rajoute le lien vers mon forum test en hide :
Seth J. Trevelyan

Seth J. Trevelyan
****

Féminin
Messages : 290
Inscrit(e) le : 05/02/2013

https://peekaboo-rpg.forumactif.com
Seth J. Trevelyan a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: [awesomebb] Bouton sélectionner sur les codes

Message par Bipo Ven 30 Déc 2022 - 14:10

Bonjour à tous,

Lastvisit a écrit:il y a dû avoir une modification sur la version Awesomebb car il était fonctionnel au début!!

En fait, c'est une erreur de ma part car j'ai coché AwesomeBB en termes de compatibilité (dans la liste des astuces) alors que ce n'est pas le cas. Il faut que je refasse une vérification car c'est déjà le deuxième tutoriel concerné par cette erreur.

Ton script est fonctionnel, est-ce que tu m'autorises à mettre à jour l'astuce à partir de cette proposition, @Lastvisit ?

Zlork a écrit:Oui, j'ai remarqué que beaucoup de codes ne sont pas à jour pour AwesomeBB mais heureusement que nous sommes là pour les faire mettre à jour grâce à votre expertise Very Happy

Il faut savoir que les astuces présentées sont des apports communautaires et non un service client. A ce titre, @Zlork, vous pouvez proposer vos améliorations et nous aider à les mettre à jour sans attendre qu'un autre membre le fasse !

Seth J. Trevelyan a écrit:Pour ma part ça ne fonctionne toujours pas ? Je ne sais pas en quoi ma version awesomebb est différente mais mes balises codes ressemblent à ça en html.

Vous avez bien mis le code CSS (avec le script proposé par @Lastvisit) ?

Code:
.selectCode { float:right; text-transform: uppercase; cursor:pointer; }
div.cont_code { clear: right; }

Bonne journée sur Forumactif.
Bipo.
Bipo

Bipo
Rédactif
Rédactif

Messages : 3776
Inscrit(e) le : 23/09/2010

Bipo a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: [awesomebb] Bouton sélectionner sur les codes

Message par Seth J. Trevelyan Ven 30 Déc 2022 - 14:54

Je viens de rajouter le CSS pour être sûre mais ça ne change rien, étant donné que le script ne fait pas son boulot pour append le bouton sur le p Visage réfléchissant

edit : dans la console j'ai une erreur au niveau du début du script, qui me dit "Uncaught SyntaxError: Unexpected token 'function'" Visage réfléchissant

edit 2 : j'ai trouvé d'où vient l'erreur ! le script entre en conflit avec un autre de mes scripts. quand je le désactive, le bouton sélectionner apparaît bien sur les codes. par contre j'ai besoin des deux scripts et je ne peux donc pas laisser le précédent désactivé, quelqu'un aurait une idée pour faire marcher les deux ensemble ?? Non ! => en fait il m'a suffit de mettre un point virgule à la fin du script précédent et le script du bouton s'est mis à fonctionner :> sujet donc résolu !
Seth J. Trevelyan

Seth J. Trevelyan
****

Féminin
Messages : 290
Inscrit(e) le : 05/02/2013

https://peekaboo-rpg.forumactif.com
Seth J. Trevelyan a été remercié(e) par l'auteur de ce sujet.

Résolu Re: [awesomebb] Bouton sélectionner sur les codes

Message par Bipo Ven 30 Déc 2022 - 15:12

Re @Seth J. Trevelyan,

J'allais publier l'explication mais vous avez trouvé par vous-même, c'est encore mieux !

Ps : Vous avez un magnifique forum, félicitations ! J'adore son design.
Bipo

Bipo
Rédactif
Rédactif

Messages : 3776
Inscrit(e) le : 23/09/2010

Bipo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: [awesomebb] Bouton sélectionner sur les codes

Message par Seth J. Trevelyan Ven 30 Déc 2022 - 15:13

(Merci beaucoup je suis justement en train d'y travailler :>)
Seth J. Trevelyan

Seth J. Trevelyan
****

Féminin
Messages : 290
Inscrit(e) le : 05/02/2013

https://peekaboo-rpg.forumactif.com
Seth J. Trevelyan a été remercié(e) par l'auteur de ce sujet.

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

- Sujets similaires

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