Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    6

    2 javascript non funzionano insieme

    Salve a tutti,
    essendo alle prime armi forse farò una domanda ovvia (chiedo scusa in anticipo), ma ho il seguente problema:

    sto facendo un semplice sito usando html + css + javascript e nella pagina index.html chiamo i seguenti script:
    <script type="text/javascript" language="JavaScript" src="js/slideshow.js"></script>
    <script type="text/javascript" language="JavaScript" src="js/menusup.js"></script>

    se li carico singolarmente, funzionano entrambi correttamente ma se li chiamo contemporaneamente ne funziona solo uno (slideshow.js).

    dove puo essere l'errore ? aiuto

    se per maggiore chiarezza devo postare il codice html, css e javascript non ci sono problemi.
    ringrazio anticipatamente chi riesce a darmi un aiutino.

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

    Re: 2 javascript non funzionano insieme

    Originariamente inviato da pac77
    se per maggiore chiarezza devo postare il codice html, css e javascript non ci sono problemi.
    piuttosto lascia un link dove vedere il tutto in azione,
    sara' quasi sicuramente una sovrascrittura di onload:
    se per es. hai piu' onload (conta anche il <body onload="...">)
    window.onload=nomeFunzione;
    ...
    onload=function(){blabla();altraFunzione('ciao')}

    deve rimanerne uno solo, che richiami in una function anonima anche quanto presente negli altri onload

    onload=function(){
    nomeFunzione();
    blabla();altraFunzione('ciao');
    }

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    6
    grazie per l'attenzione

    la bozza del sito si può vedere all'indirizzo: http://www.glbescursioni.altervista.org/

    potrete notare che:
    - il primo script "slideshow.js" funziona correttamente (angolo destro alto dove si fa lo slideshow delle foto);
    - il secondo script "menusup.js" NON VA ! infatti passando il mouse sul menu superiore, si dovrebbero aprire a "tendina" i vari sottomenu di primo e secondo livello.
    ribadisco che entrambi gli script, se caricati singolarmente, funzionano alla perfezione.

    Non mi risulta aver sovrapposto più chiamate onload infatti:
    - il primo script è chimato tramite <body class="body" onload="runSlideShow()">
    - il secondo script è chiamato tramite le classi del codice (all'interno del <body> </body>)

    <ul class="menusup">[*]Il nostro gruppo
    <ul>[*]Pagina iniziale e news[*]Chi siamo[*]Inviaci i tuoi file[*]Contattaci[/list]
    ... ecc ... potete vedere l'html direttamente dal sito

    grazie ancora, ciao

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da pac77

    Non mi risulta aver sovrapposto più chiamate onload infatti:
    - il primo script è chimato tramite <body class="body" onload="runSlideShow()">
    - il secondo script è chiamato tramite le classi del codice (all'interno del <body> </body>)
    Dici secondo me non è cosi..
    1 onload nel body della home onload="runSlideShow()"
    2 onload nel menusup.js window.onload = function(e) {.....}
    E il nostro sherlock holmes (Xinod) ha risolto questo difficile caso degli onload sovrascritti (le sa tutte)

    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    6
    grazie mille a tutti... adesso che so in che direzione muovermi, vedo di trovare in rete la soluzione al problema per gestire onload e window.onload assieme (dato che non so fare).

    grazie ancora per le dritte

  6. #6
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    Originariamente inviato da pac77
    vedo di trovare in rete la soluzione al problema per gestire onload e window.onload assieme (dato che non so fare).
    la soluzione piu' semplice e' gia' in quello che ti ho scritto sopra
    specialmente se non ci sono altri fattori in gioco (tipo: alcune pagine hanno entrambi gli script altre no)
    semplicemente cambia
    codice:
    window.onload = function(e) {
    	if(tags_ = document.getElementsByTagName('ul'))
    		for(i=0; i<tags_.length; i++) 
    			if (tags_[i].className==menuClassName) closeSub(tags_[i]);
    	if(tags_ = document.getElementsByTagName('ol'))
    		for(i=0; i<tags_.length; i++) 
    			if (tags_[i].className==menuClassName) closeSub(tags_[i]);
    }
    in
    codice:
    window.onload = function(e) {
    	if(tags_ = document.getElementsByTagName('ul'))
    		for(i=0; i<tags_.length; i++) 
    			if (tags_[i].className==menuClassName) closeSub(tags_[i]);
    	if(tags_ = document.getElementsByTagName('ol'))
    		for(i=0; i<tags_.length; i++) 
    			if (tags_[i].className==menuClassName) closeSub(tags_[i]);
    	runSlideShow();
    }
    e rimuovi l' onload dal <body>
    ciao

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2009
    Messaggi
    6
    ... gentilissimo ... grazie ancora.
    oggi ho iniziato a leggere questo manuale:

    http://www.apogeonline.com/libri/9788850327577/scheda

    perchè voglio capire il codice che sono intenzionato a mettere nel mio semplice sito.
    grazie ancora per gli aiuti

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.