Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di semolino
    Registrato dal
    Nov 2004
    Messaggi
    1,499

    Codice Ajax non va più

    Ho utilizzato questo codice
    codice:
    <script type="text/javascript"><!--//
    function caricaBox(string, IdBox) {  
        var url_action = string; 
        new Ajax.Request(url_action, {onComplete:showResponse} ); 
        function showResponse(originalRequest)      
            { 
            $(IdBox).innerHTML = originalRequest.responseText; 
            } 
    		
    return false;
    }
    //--></script>
    in una vecchia pagina e richiamavo la funzione con
    codice:
    prova
    Come mai se testo il codice, ora mi apre il link i una pagina nuova e non dentro al div "uno"?
    Mistero??
    L'altro sito dove utilizzo questo codice funziona ancora!!
    Non è che mi sono perso qualche file js da includere? A me non sembra...

  2. #2
    ma prototype.js l'hai incluso con <script>?

    Comunque, prova con

    prova

  3. #3
    Utente di HTML.it L'avatar di semolino
    Registrato dal
    Nov 2004
    Messaggi
    1,499
    Guarda mi sento un idiota... nelle pagine che avevo funzionanti ho più o meno 8 file js inclusi,
    li avevo provati tutti tranne prototype. Ecco, voilà!! Grazie
    Ora mi sono fatto una nota di testo nella pagina...

    Secondo te come mai se carico questa pagina con Ajax il codice non viene più interpretato in modo corretto? mi sono accorto che funziona solo se non includo il prototype.js...
    Premetto che anche i file js interessati a questo codice sono inclusi nella index.
    codice:
    <div class="dock" id="dock">
      <div class="dock-container">
      [img]images/docmenu/home.png[/img]<span>Home</span> 
      [img]images/docmenu/email.png[/img]<span>Contact</span> 
      [img]images/docmenu/portfolio.png[/img]<span>Portfolio</span> 
      [img]images/docmenu/music.png[/img]<span>Music</span> 
      [img]images/docmenu/video.png[/img]<span>Video</span> 
      [img]images/docmenu/history.png[/img]<span>History</span> 
      [img]images/docmenu/calendar.png[/img]<span>Calendar</span> 
      [img]images/docmenu/rss.png[/img]<span>RSS</span> 
    </div>
    </div>
    <script type="text/javascript">
    	
    	$(document).ready(
    		function()
    		{
    			$('#dock').Fisheye(
    				{
    					maxWidth: 40,
    					items: 'a',
    					itemsText: 'span',
    					container: '.dock-container',
    					itemWidth: 30,
    					proximity: 80,
    					halign : 'center'
    				}
    			)
    		}
    	);
    
    </script>
    Cosa lo rende incompatibile? Vuoi che posto anche i due js che servono per il dockmenu?

  4. #4
    il fatto che jQuery e Prototypes sono incompatibili

  5. #5
    Utente di HTML.it L'avatar di semolino
    Registrato dal
    Nov 2004
    Messaggi
    1,499
    soluzioni?
    Adotto un altro criterio per caricare le pagine con Ajax?

  6. #6
    non conosco così bene le differenze fra jQuery e Prototype, però se usi prototype solo per ajax forse puoi sostituirlo con jquery che usi per altre cose.. e tra l'altro ti eviti di far caricare una libreria in più.

    ho fatto solo una ricerca veloce http://docs.jquery.com/Ajax

    ciao
    Ondare, il mio blog!

  7. #7
    giustissimo.

    BTW, per conoscenza, quasi tutte le librerie sono incompatibili, vuoi perché gli sviluppatori non vogliono che si usi altro che la propria Lib, vuoi perché, come in questo caso, le buone idee sono le più copiate. In particolare è la funzione speciale $(id) per fare in breve document.getElementById(id) ed aggiungere le proprie funzioni, questa funzione, $, viene definita in entrambe le librerie per cui, quella che la definisce per seconda sovrascrive la prima, impedendo così di funzionare per la prima lib.

  8. #8
    Utente di HTML.it L'avatar di semolino
    Registrato dal
    Nov 2004
    Messaggi
    1,499
    Ok, provo a vedere quel link!

    Per il discorso del $ mi stai dicendo che potrei cambiare il nome della variabile in modo che ce ne siano due e cosi non si sovrascrivono?

    Ho trovato questo che sembrerebbe interessante, ma provandolo non funziona.
    In pratica dopo aver incluso jquery e prototype come indicato e modificato la mia chiamata cosi:
    codice:
    <script type="text/javascript">
    	
    	JQ(document).ready(
    		function()
    		{
    			JQ('#dock').Fisheye(
    				{
    					maxWidth: 40,
    					items: 'a',
    					itemsText: 'span',
    					container: '.dock-container',
    					itemWidth: 30,
    					proximity: 80,
    					halign : 'center'
    				}
    			)
    		}
    	);
    
    </script>
    ottengo sempre lo stesso errore.

  9. #9
    Utente di HTML.it L'avatar di semolino
    Registrato dal
    Nov 2004
    Messaggi
    1,499
    non so se avete letto il posto sopra, ma stavo già guardando altri esempi di JQuery.
    Ora ho questo
    codice:
    <script type="text/javascript">
        $(document).ready(function()
            {
                $("#loadData").click(function()
                    {
                        $("#wait").text("...arrivo...");
                        $("#site").append('<div id="chisiamo"></div>')
                                                .children("#chisiamo").hide()
                                                .load("boxes/chisiamo.php div#chisiamo", function()
                                                    {
                                                        $("#wait").remove();
                                                        $("#chisiamo").slideDown("slow");
                                                    });
                        return false;
                    });
            });
        </script>
    lancio il link
    <span>Chi siamo</span>

    Come posso passare in modo dinamico dal link i valori:
    - site
    - boxes/chisiamo.php
    - div
    - chisiamo

    In questo modo nel mio menu lancio contenuti diversi nel div interessato

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.