Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [jQuery]problema con menù e load(), toogle()

    Salve a tutti!
    Sto iniziando ora lavorare con Wordpress e sto cercando anche di imparare ad utilizzare jQuery degnamente. Sto realizzando un sito per un'associazione di cui faccio parte.
    Ho due problemi che non sto riuscendo a risolvere:
    1- Lo scorrimento verticale del menù principale non funziona correttamente, se non si muove il mouse in un certo modo il menù continua a chiudersi e riaprirsi. Inoltre mi piacere affiancare i[*] del sottomenù a coppie, ma non ci riesco.
    2- Vorrei aprire col click sulle icone dei social network in prima pagina una div che mostri ulteriori informazioni
    Potete vedere un'anteprima del sito qui: link anteprima

    1- lo script potete vederlo nell'anteprima, comunque lo metto anche qua:
    codice:
    jQuery(document).ready(function(){
    jQuery(function(){
    	jQuery('#mainmenu ul li ul').hide();
    	jQuery('#mainmenu ul li').hover(function(){
    		jQuery('#mainmenu ul li').not(jQuery('ul', this)).stop();
                    jQuery('ul', this).slideDown(); 			
                    },
    		function(){
     				jQuery('ul', this).slideUp();
    		}
    );
    });});
    Non riesco a capire perchè si comporti in quel modo.Inoltre non riesco ad affiancare a coppie i[*]. Sapete come risolvere?

    2- usando lo script che ho scritto ora funziona esattamente come vorrei, però, dato che ci sono 8 "pulsanti" e che vorrei imparare ad usare decentemente jQuery mi piacerebbe scrivere una cosa che funzioni per tutti.
    SCRIPT ATTUALE:
    codice:
    <a id="fbc">[img]<?php bloginfo('template_url'); ?>/images/social/facebook.jpg[/img]</a><div id="fb" class="open sx"></div>
    codice:
    jQuery("#fbc").click(function () {
    	var slide = jQuery("#fb");
    	if (!slide.data("loaded")) {
    		slide.load("http://localhost:81/wp-content/themes/progettazione/load/open.php fb");
    		slide.data("loaded", true);
     		}
     		slide.slideToggle("slow"); 	});
    Nuovo script:
    codice:
    <a id="fb">[img]<?php bloginfo('template_url'); ?>/images/social/facebook.jpg[/img]</a><div class="open sx"></div>
    codice:
    jQuery(document).ready(function(){
    	jQuery(".social_home a").click(function(){
     		var pagina = jQuery(this).attr('id');
     		var slide = jQuery(this).find('.open');
     		if (!slide.data("loaded")) {
     			slide.load("http://localhost:81/wp-content/themes/progettazione/load/open.php "+pagina);
     			slide.data("loaded", true);
     		}
     		slide.slideToggle("slow");
    	 	}); });
    Secondo il mio cervello bacato dovrebbe funzionare, ma ovviamente la realtà mi smentisce(come sempre). Gentilmente, mi spieghereste dove sbaglio? Oppure è necessario scrivere una funzione per ogni "pulsante"?
    Vi ringrazio per eventuali risposte!

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    riguardo la seconda domanda i tag con class open non sono figli dei tag cliccati, in altre parole questa istruzione jQuery(this).find('.open') non troverà mai nulla...

  3. #3
    Grazie per la risposta!
    Quindi la soluzione sarebbe:
    codice:
    var slide = jQuery(this).next(".open")
    funziona! ora faccio un paio di modifiche e almeno per quello dovrei esserci.
    L'unica cosa che non ho capito di come funzioni load("pagina.html #ancora") è come deve essere impostata l'ancora sul documento da caricare:
    <a name="ancora"></a>

    contenuto</p>
    <a name="ancora1"></a>

    contenuto1</p>
    oppure
    <a name="ancora">

    contenuto</p></a>
    <a name="ancora1">

    contenuto1</p></a>

    Per il menù sai dirmi qualcosa?

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    sembra che l'evento hover sia richiamato + volte del necessario... mi pare che ci sia uno spazio tra il menu e le tendine che vengono fuori... questo comporta il richiamo continuo degli eventi mouseenter e mouseleave... per darti informazioni + dettagliate dovrai studiarmi il codice del tuo sito e sinceramente ora non ne ho voglia (è venerdi )

  5. #5
    beh per ora ti ringrazio davvero tanto!
    Si, anche secondo me il problema era quello, infatti ho provato a togliere lo spazio dato dal posizionamento assoluto e a metterlo come margine, ma ancora non ci siamo.
    Per le ancora non me la sono sentita di procedere oltre anche perchè ho trovato poca documentazione in merito, ho creato 8 files e sono tranquillo così
    Vediamo se nel weekend qualche anima pia ha voglia di darmi una mano con quel maledetto menù!
    Per ora grazie davvero!

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 © 2024 vBulletin Solutions, Inc. All rights reserved.