Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683

    aggiungere evento prima del markup

    Ciao a tutti! come faccio a far funzionare questa cosa?
    è solo a scopo didattico,
    il "pulsante" "aggiungi div" aggiunge dei div e, lo fa correttamente
    poi cliccando su questi div si deve vedere un alert con il contenuto di questo div e, questo non va... come mai?
    codice:
    <body>
    	<span id="add">aggiungi div</span>
    	<div id="contenitore"></div>
    </body>
    
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script type="text/javascript">
    	$("#add").click(function(){
    		$("#contenitore").append("<div class='random'>"+Math.random()+"</div>");
    	});
    	$(".random").click(function(){
    		alert($(this).html());
    	});
    </script>

  2. #2
    Il bind del click sui vari ".random" non ti consente di intercettare gli eventi di oggetti creati dopo. Puoi usare delegate quando sei in questo caso. Ad esempio:


    codice:
    <html>
    
    <body>
    	<span id="add">aggiungi div</span>
    	<div id="contenitore"></div>
    </body>
    
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script type="text/javascript">
    	$("#add").click(function(){
    		$("#contenitore").append("<div class='random'>"+Math.random()+"</div>");
    	});
    	$(document).delegate(".random", "click", function() {
    		alert($(this).html());
    	});	
    </script>
    
    </html>

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    se usi la versione 1.7 di jquery puoi utilizzare .on()

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2008
    Messaggi
    1,683
    e se avessi un altro tipo di evento? come keydown o mouseover? devo cercare nella documentazione di jquery che ci sarà il giusto metodo, vero?

  5. #5
    Originariamente inviato da iacoposk8
    e se avessi un altro tipo di evento? come keydown o mouseover? devo cercare nella documentazione di jquery che ci sarà il giusto metodo, vero?
    Esattamente ("keydown", "mouseenter", ...).
    Per concludere, integrando il post di Vindav:

    Da JQuery 1.3 live
    Da JQuery 1.4.3 delegate
    Da JQuery 1.7 on

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.