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

    Javascript e funzioni che non funzionano...

    Buon giorno a tutti!
    Seguo da molto il forum di HTML.it e mi ha salvato parecchie volte dal baratro più totale. E per questo vi ringrazio infinitamente TUTTI.
    Ma stavolta non so proprio dove sbattere la testa.
    Partendo con il mio problema:
    - ho un url che mi passa più parametri della serie:
    codice:
    http://miosito.com/index.php?asd1=qwe&asd2=qwer
    -ho identificato il parametro che mi serve in javascript e lo estrapolo mettendolo nella variabile "dest" in questo modo:
    codice:
    document.onload=box_dest();
    function box_dest(){
    var qst=location.search.substr(1);
    var dati = new Array()
    dati=qst.split("&");
    //prendo valore del parametro aggiunto dir=xxx
    var dest = dati[5].substr(dati[5].indexOf("=")+1);
    -ora è qui che si pone il problema, che non sono nemmeno sicuro che sia di codice, ma non saprei di cosa potrebbe essere se non quello.
    Se faccio alert(dest); mi ritorna il valore giusto e tutto ma appena chiamo la funzione in cui devo usare quel valore non fa nulla... O meglio la funzione riceve il valore perchè ho fatto un alert anche lì dentro e lo fa vedere ma quando si tratta di farmi vedere il div che si chiama come il contenuto della variabile dest non fa nulla. ho provato pure ad aggiungere un setTimeOut così la pagina finisce di caricarsi ho pensato, ma non fa nulla nemmeno così..
    Codice della funzione che riceve "dest":
    codice:
    function mostra(box_recived){
    	alert('mostra');
    	alert(box_recived);
    	 jQuery('.box').hide('fadeout');
    	 jQuery('#'+box_recived).show('fadein')
    }
    Grazie mille per l'aiuto!

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Cioè al caricamento dalla pagina dalla url estrappoli un nome che equivale al id (che non è la stessa cosa del name) di un div del documento stesso?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    la funzione "mostra" non contiene errori, assicurati di passargli i valori corretti.
    Perchè usi "jQuery" invece di "$"? Sei in modalità di compatibilità?
    Se vuoi un fadeIn e un fadeOut dovresti usare:
    jQuery('.box').fadeOut();
    jQuery('#'+box_recived).fadeIn();

    Per il debug dei tuoi script puoi usare la 'Consolle degli errori' di firefox o le analoghe funzioni degli altri browser.

  4. #4
    Grazie per le risposte!
    Troppo tempestivi! ahahah

    Cioè al caricamento dalla pagina dalla url estrappoli un nome che equivale al id (che non è la stessa cosa del name) di un div del documento stesso?
    Esattamente estrapolo proprio l'id del div da mostrare, praticamente se l'utente arriva nella pagina della TAB, dal menu principale vede come prima cosa un div con del testo generico di prensentazione del prodotto, ma se dall'index accedono ad una sezione in particolare, che nella tab ho organizzato appunto in tab, volevo che vedessero direttamente il contenuto della tab che gli serve... e l'idea era quella di passare l'id del div per URL. la domanda che mi sorge però è, se invece applico ai link nell'index un onClicK uguali a quelli che ho messo nella pagina della TAB secondo voi funziona comunque?

    la funzione "mostra" non contiene errori, assicurati di passargli i valori corretti.
    Perchè usi "jQuery" invece di "$"? Sei in modalità di compatibilità?
    Se vuoi un fadeIn e un fadeOut dovresti usare:
    jQuery('.box').fadeOut();
    jQuery('#'+box_recived).fadeIn();
    Precisamente, sono in modalità noConflict perchè utilizzo Joomla, invece la questione dei FadeOut e FadeIn non capisco cosa cambi da .fadeOut a .hide('fadeOut')

    GRazie ancora per le risposte...

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Io fatico a segueti, e visto che la mia pazienza non è più quella di una volta lascio a Luca (molto più comprensivo) la possibilità d'aiutarti.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  6. #6
    Ahahah ok grazie comunque!
    Semplifico così non mi lascia a piedi anche Luca


    Ho 2 pagine, Index e Prodotti(con la famigerata TAB),
    -index ha il menu principale e una tabella.
    -il menu principale ha come link prodotti, e se l'utente clicca su quella voce arriva chiaramente in quella pagina, che ricordo è quella con la TAB.
    -nella tabella invece ho i link diretti ai vari prodotti, che sono contenuti nella Tab che è nella pagina sopra citata, e quindi volevo fare che cliccando su questi link nella tabella mi si aprisse la pagina prodotti ma con la tab del prodotto che l'utente ha scelto. e avevo pensato di fare ciò passando per URL l'id del DIV che devo mostrare. ESEMPIO:
    il cliente mi clicca sul link "frizioni" nella tabella dell'index, volevo che fosse rediretto alla pagina prodotti e che la Tab della pagina prodotti fosse su Frizioni... spero di essere stato chiaro almeno stavolta...
    Ringrazio ancora per la disponibilità!

  7. #7
    Originariamente inviato da lucavizzi
    la funzione "mostra" non contiene errori, assicurati di passargli i valori corretti.
    Se vuoi un fadeIn e un fadeOut dovresti usare:
    jQuery('.box').fadeOut();
    jQuery('#'+box_recived).fadeIn();

    Per il debug dei tuoi script puoi usare la 'Consolle degli errori' di firefox o le analoghe funzioni degli altri browser.

  8. #8
    Problema risolto, grazie a tutti comunque.
    L'ho risolto mettendo una chiamata a "mostra" dentro ad un if che controlla se l'url contiene il dato che voglio, tutto questo parte chiaramente dopo un timeOut di 1 secondo sulla pagina HTML.
    So che non è il massimo mettere il timeOut ma l'onload non funziona... e non so il perchè.

    Chiaramente gli url con la specifica del TAB voluto va messa nei link in questo modo:
    codice:
    http://miosito.com/index.php?asd1=qwe&dest=frizioni
    La pagina PHP dove ho la TAB, prende con il metodo $_REQUEST il valore di "dest" dall'URL e lo mette in una variabile di javascript. Controllo che quest'ultima sia diversa da "null", se è verificato richiamo dopo 1 secondo la funzione "mostra" passandogli semplicemente la variabile "dest".
    Se però metto a 0 il timeOut non funziona...

    Posto il codice con il quale ho risolto.

    Pagina php dove risiede la TAB:
    Codice PHP:
    $dest=$_REQUEST['dest'];
    <
    script type=\"text/javascript\">
            var dest='
    $dest';
            if(dest!=null)
             setTimeout(\"mostra(dest)\",1000);
    </script> 
    Codice jQuery (in modalità noConflict per JOOMLA):
    codice:
    function mostra(box_recived){
    	 jQuery('.box').hide('fadeOut');
    	 jQuery('#'+box_recived).show('fadeIn')
    	 }
    Io ho risolto nel metodo più spartano possibile, spero di essere stato utile a qualcuno nella mia stessa situazione, e se avete altre idee meglio perchè quel timeOut lì non è che mi ispiri molto...

    GRAZIE ANCORA! CIAOO

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    se vuoi farlo all'onload ti basta questo:

    codice:
    jQuery(function(){
          jQuery('.box').hide('fadeOut');
          jQuery('#'+box_recived).show('fadeIn');
    });

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