IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Fonction dans la même balise qui ne fonctionne plus


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut Fonction dans la même balise qui ne fonctionne plus
    bonjour a tous

    je suis en train de faire un editeur wiziwig que j'integrerais dans un webrowser dans un userform en vba

    en attendant je le fait dans un fichier html

    1 question :pourquoi le bouton couleur texte ne fonctionne pas
    2 question : pourquoi quand je met les fonctions dans la meme balises "<script>" elles ne fonctionnent plus

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    <html>
    <head>
    <style>
    #editeur{width:650px;
    height:500px;
    border:1px solid blue;
    }
    </style>
     
     
    <script>
      function Backgtexte() {
        var selection = window.getSelection().getRangeAt(0);
        var selectedText = selection.extractContents();
        var balise = document.createElement("span");
        balise.style.backgroundColor = "yellow";
        balise.appendChild(selectedText);
     
        selection.insertNode(balise);
     
    }
    </script>
     <script>
    function texteBiU(BiU) {
     var selection = window.getSelection().getRangeAt(0);
        var selectedText = selection.extractContents();
        var balise = document.createElement(BiU);
     
        balise.appendChild(selectedText);
        balise.onclick = function (ev) {
            this.parentNode.insertBefore(document.createTextNode(this.innerHTML), this);
            this.parentNode.removeChild(this);
        }
        selection.insertNode(balise);
    }
    </script>
    <script>
    function texte-couleur(coul) {
        var selection = window.getSelection().getRangeAt(0);
        var selectedText = selection.extractContents();
        var balise = document.createElement("span");
        balise.style.Color = coul;
        balise.appendChild(selectedText);
     
        selection.insertNode(balise);
     
    }
    </script>
    </head>
    <body>
    <div id="editeur" contenteditable="true" >
    <p>tapez votre texte </p>
    </div>
    <button onclick="texteBiU('b')">Bold</button>
    <button onclick="texteBiU('i')">italic</button>
    <button onclick="texteBiU('u')">souligné</button>
    <button onclick="texte-couleur('#FF0000')">texte en couleur </button>
    <button onclick="Backgtexte()">bacground texte</button>
     
    </body>
    </html>
    une idée???
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 210
    Par défaut
    Bonjour,
    juste jeté un oeil mais déjà

    • inutile de mettre des balise <script></script> de partout
    • en javascript, comme dans les autre langage écrire un nom avec un - dedans génère une erreur car assimilé à une soustraction donc pas texte-couleur mais texte_couleur

  3. #3
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    Merci Nosmoking pour le retour
    je vais essayer cela
    quand au balises je suis d'accords mais quand je les met dans une seule elles ne fonctionnent plus
    bon deja je vais corriger les noms avec un trait d'union

    je reviend le cas echeant

    merci encore
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  4. #4
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    bon Ok les fonctions sont toutes dans la meme balise "script"
    c'estait bien le nom de la fonctiontexte_couleur qui foutait le boxon

    cependant elle ne fonctionne toujours pas

    j'ai mis un msgbox(alert en javascript) pour voir si la variable etait bien injectée et recu par la fonction
    c'est le cas

    je suppose donc que c'est les lignes d'en dessous qui ne vont pas

    mais je ne vois pas ou !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    function texte_couleur(coul) {
        /*alert(coul);*/
    var selection = window.getSelection().getRangeAt(0);
        var selectedText = selection.extractContents();
        var balise = document.createElement("span");
       /* balise.style.font.Color=coul;  nemarche pas */
         /* balise.style.Color=coul;  nemarche pas */
     
    balise.appendChild(selectedText);
     
        selection.insertNode(balise);
     
    }
    une idée????
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  5. #5
    Rédacteur

    Avatar de autran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2015
    Messages
    1 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2015
    Messages : 1 241
    Billets dans le blog
    55
    Par défaut
    Patrick, je n'avais pas fait gaffe mais color doit être en minuscule et tout marche.
    Voila ce que ça donne au final :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    <!doctype html>
    <html lang="fr">
    	<head>
    		<meta charset="UTF-8">
    		<style>
                    #editeur
                    {
                            width:650px;
                            height:500px;
                            border:1px solid blue;
                    }
                    </style>
    		<script type="text/javascript">
                            function Backgtexte() 
                            {
                                    var selection = window.getSelection().getRangeAt(0);
                                    var selectedText = selection.extractContents();
                                    var balise = document.createElement("span");
                                    balise.style.backgroundColor = "yellow";
                                    balise.appendChild(selectedText);
                                    selection.insertNode(balise);
                            }
     
                            function texteBiU(BiU) 
                            {
                                    var selection = window.getSelection().getRangeAt(0);
                                    var selectedText = selection.extractContents();
                                    var balise = document.createElement(BiU);
                                    balise.appendChild(selectedText);
                                    balise.onclick = function (ev) 
                                    {
                                            this.parentNode.insertBefore(document.createTextNode(this.innerHTML), this);
                                            this.parentNode.removeChild(this);
                                    }
                                    selection.insertNode(balise);
                            }
     
                            function texte_couleur(coul) 
                            {
                                    var selection = window.getSelection().getRangeAt(0);
                                    var selectedText = selection.extractContents();
                                    var balise = document.createElement("span");
                                    balise.style.color = coul;
                                    balise.appendChild(selectedText);
                                    selection.insertNode(balise); 
                            }
                    </script>
    	</head>
    	<body>
    		<div id="editeur" contenteditable="true" >
    			<p>tapez votre texte </p>
    		</div>
    		<button onclick="texteBiU('b')">Bold</button>
    		<button onclick="texteBiU('i')">italic</button>
    		<button onclick="texteBiU('u')">souligné</button>
    		<button onclick="texte_couleur('red')">texte en couleur </button>
    		<button onclick="Backgtexte()">bacground texte</button>
    	</body>
    </html>
    Développeur Java
    Site Web

  6. #6
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re exellent!!!
    re
    un grand merci pour le retour Autran

    ca fonctionne nickel

    et pour ce que ca interesse pour s'en servir dans un "HTA"(html Application) ou dans un webbrowser dans vb ou vba car le webbrowser utilise encore les protocole IE8 et 9
    il faut ajouter cette balise meta dans le head

    [QUOTE]<meta http-equiv="X-UA-Compatible" content="IE=10" />[/QUOTE]

    et si cela ne suffit pas utiliser simulate dans la balise meta

    purré j'ai moins l'impression de me casser la tete pour rien la

    merci Autran
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  7. #7
    Rédacteur

    Avatar de autran
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2015
    Messages
    1 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2015
    Messages : 1 241
    Billets dans le blog
    55
    Par défaut
    Citation Envoyé par patricktoulon Voir le message
    2 question : pourquoi quand je met les fonctions dans la meme balises "<script>" elles ne fonctionnent plus
    Bonjour Patrick
    pour que ça fonctionne dans la même balise script j'ai modifié
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <meta charset="UTF-8">
    <script type="text/javascript">
    function texte_couleur(coul)
    Maintenant je vais regarder ta fonction texte_couleur()
    A plus tard
    Marc
    Développeur Java
    Site Web

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 11/11/2011, 04h23
  2. Réponses: 4
    Dernier message: 03/04/2008, 13h06
  3. [W3C] class et id dans une même balise
    Par stars333 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 26/01/2008, 01h47
  4. [MySQL] Appel de fonction dans la même page
    Par guillaumeIOB dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 08/01/2007, 00h31
  5. Réponses: 2
    Dernier message: 14/12/2006, 18h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo