Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726

    Inserimento smiles nella chat

    Sto finendo di scrivere una chat e come ultimi accorgimenti vorrei inserire alcuni smiles, ho provato diciamo a buttar giu due righe su come dovrei fare e credo di essere riuscito a far visualizzare gli smiles.
    Pero ora si viene a creare un fastidioso problemino:
    quando vado a cliccare su uno smile nell'area di testo appare tutto il codice relativo alla visualizzazione della faccina (<img scr...>) mentre io vorrei che si visualizzasse solo una cosa del genere ":-)" quando schiaccio sullo smile che sorride.

    Ecco il codice della prova che hp fatto:
    codice:
    <html>
     <head>
      <script language="javascript">
      
       function immagine1()
       {
        alert ("hai schiacciato la focaccina");
        window.document.modulo.input.value=window.document.modulo.input.value + "[img]c:\smile.gif[/img]";
    	window.document.modulo.input.focus();
    	return false;
       }
      </script>
     </head>
     
     <body>
      <form name="modulo" method="post">
       <input type="text" name="input">
       <INPUT type="image" src="smile.gif" name="smile" onClick="return immagine1()">  
      </form>
     </body>
    </html>
    Come posso fare?

    tnx!

  2. #2
    Prima di tutto, evita di usare "input" come nome di un campo...potresti "confondere" JavaScript. Poi, ti basta semplicemente usare una funzione che aggiunge (accoda) al valore del campo di testo il segno corrispondente alla faccina.

    codice:
    <head>
    <script type="text/javascript">
    <!--
    function addSmile(smile) {
    document.getElementById("testo").value = document.getElementById("testo").value + " " + smile;
    document.getElementById("testo").focus();
    }
    -->
    </script>
    </head>
    <body>
    
    <form action="" method="post">
    <input type="text" name="testo" id="testo" value="" />
    </form>
    
    [img]smile/sorriso.gif[/img]
    Quindi ti basta passare alla funzione che richiami in ogni link una diversa sequenza di caratteri e questa verrà accodata al testo presente nel campo di input. Se usi un elemento <input /> con type="image", non crei un pulsante qualunque, ma un submit, che ti invia i dati del form una volta cliccato! Devi usare semplici link per le immagini delle faccine.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726
    Non sapevo sta cosa che inputy type=image fosse un submit, piu tardi provo a vedere seil tuo suggerimento funziona.

    tnx!

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726
    Pero come mi hai consigliato di fare te nell'area della visualizzazione del testo inserito io non visualizzo l'immagine dello smile ma il corrispettivo in codice ( es: :-) ) ed io invece vorrei che l'immagine si vedesse.

  5. #5
    Certo...infatti dovresti fare il parsing del testo che viene "inserito" nell'area di visualizzazione e sostituire le combinazioni di caratteri con il corrispondente tag <img />. In JavaScript è abbastanza complesso, mentre usando un linguaggio lato server come PHP potresti semplicemente usare str_replace() per sostituire al volo tutte le combinazioni dei caratteri per le faccine con i vari tag <img />. Ma come funziona questa chat? Fa tutto via JavaScript? Perché di solito si usa Java per le chat...

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726
    La chat di js non ha quasi nulla, solo i pulsanti per mettere il grassetto, corsivo e sottolineato al testo.

    Viene usato php fondamentalmente e i messaggi vengono memorizzati su un file.

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726
    seed, come mai il tuo codice non va su firefox?

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    726
    Ho risolto l'incompatibilità con firefox cambiando il contenuto della funzione addSmile cosi:

    codice:
    function addSmile(smile) 
      {
       window.document.modulo.messaggio.value = window.document.modulo.messaggio.value + smile;
      }

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.