Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    50

    codice che funziona su Firefox ma non su Explorer

    Questo codice funziona su Firefox ma non su Explorer. Qualcuno mi sa dire perchè?

    codice:
    function captureEnter(e) {
    	if (e.type == 'keydown') if (e.which == 13) alert('Hai premuto INVIO!');
    }
    document.captureEvents(Event.KEYDOWN);
    document.onkeydown = captureEnter;

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    codice:
    function captureEnter(e) {
    	e=e||window.event;
    	if (e.keyCode == 13) alert('Hai premuto INVIO!');
    }
    document.onkeydown = captureEnter;
    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    50
    Grazie, comunque ho trovato un'alternativa:

    codice:
    function captureEnterExp() {
    	var keycode = event.keyCode
    	if (event.keyCode == 13) alert('Hai premuto INVIO!');
    }
    document.onkeydown = captureEnterExp;

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649


    fa come vuoi
    prova quello che hai scritto con firefox e poi ne riparliamo...

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    50
    Originariamente inviato da Xinod


    fa come vuoi
    prova quello che hai scritto con firefox e poi ne riparliamo...
    Eh lo so che non funziona ma tanto sto lavorando in PHP, quindi gli faccio riconoscere il browser a quel livello e aggiungo lo script alla pagina in base al risultato.


  6. #6
    Originariamente inviato da Xinod
    codice:
    function captureEnter(e) {
    	e=e||window.event;
    	if (e.keyCode == 13) alert('Hai premuto INVIO!');
    }
    document.onkeydown = captureEnter;
    Ciao Xinod, mi accodo a questa discussione non molto recente.

    Vorrei attivare la funzione captureEnter() solo su pressione del tasto invio nella textarea; allora ho provato con questa modifica al tuo snippet:

    codice:
    <html>
    <head>
    <title>Test keydown per FF</title>
    <script language="javascript" type="text/javascript">
    <!--
    function captureEnter(e) {
    	e = e || window.event;
    	if (e.keyCode == 13) { alert('Hai premuto invio nella textarea.'); }
    }
    //-->
    </script>
    </head>
    <body>
    <textarea name="x" onkeydown="captureEnter();"></textarea>
    </body>
    </html>
    Su MSIE funziona, su FF no. (Console JS risponde "e has no properties").
    Qual è la giusta notazione per la lettura dell'evento per FF?
    Emanuele DG
    <?php echo "Proverbio zen(d): vivi ogni giorno come se fosse il ".date('d M Y', time()); ?>
    Intellectual property

  7. #7
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    devi passare "event" per i browser che non usano l' oggetto window.event
    codice:
    onkeydown="captureEnter(event);"

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.