Visualizzazione risultati 1 fino 12 di 12

Discussione: [javascript] eventi ONCLICK e ONDBLCLICK

  1. #1
    esotica non è connesso Utente giovane
    Data registrazione
    08-05-2008
    Messaggi
    87

    Predefinito [javascript] eventi ONCLICK e ONDBLCLICK

    ho alcuni link <A> in cui uso i due eventi ONCLICK e ONDBLCLICK.
    A seconda che venga premuto una sola volta il mouse o il "doppio-click" esegue funzioni diverse (in soldoni apre pagine diverse).

    PROBLEMA: se il link non e' visibile e devo scorrere le barre (orizzontale in particolare) con IE non riesco a fare il doppio-click, perche' come premo la prima volta riporta la pagina in 0,0 e il secondo click va in punto diverso.
    Con FF questo problema non c'e', riesco a fare il doppio-click. Il problema e' un altro, mi apre si il link collegato al ONDBLCLICK ma apre anche quello all'ONCLICK. Come me ne accorgo ? Perche' quello all'ONDBLCLICK lo apro n una pagina nuova (pop-up), mentre l'altro nella stessa pagina del link.

    Come posso risolvere ?

    GRAZIE

    PS: spero di essere stato chiaro.

  2. #2
    Guest

    Predefinito

    Beh io non ho capito bene, ti direi intanto di controllare la corretta chiusura dei tag inoltre di usare l'attribute href.

    Esempio?

    Codice HTML:
    <a href="#click" onclick="javascript:alert('hello world')">Click</a>
    Se ci linki la pagina col problema o ne posti il codice è meglio.


  3. #3
    esotica non è connesso Utente giovane
    Data registrazione
    08-05-2008
    Messaggi
    87

    Predefinito

    Codice HTML:
    <A CLASS="piccolo_viola" HREF="#" onClick="javascript:pulsante_uno(6, 'luglio.php'); return false;" onDblClick="javascript:pulsante_due(6, 'luglio.php'); return false;">luglio</A>
    ecco le due funzioni javascript

    Codice HTML:
    function pulsante_uno(button, collegamento) {
    	var pagina = "";
    ...
    	if (button == 6) pagina = collegamento;
    	window.location.href=pagina;
    }
    
    function pulsante_due(button, collegamento) {
    	if (button == 6) {
    		finestra = window.open(collegamento, 'luglio', 'top=300, left=0, height=400, width=1024, resizable=yes, scrollbars=yes');
    	}else{
    ...
    	}
    }
    Ricapitolo il PROBLEMA:
    con FF (2.13) -> l'evente ONDBLCLICK apre un'altra finestra e gin qui funziona, pero' mi ricarica anche la finestra "di partenza" con lo stesso link della nuova (cosa che non vorrei);

    con IE (7) -> l'evento ONDBLCLICK mi ricarica nella stessa finestra il link, come se avessi premuto una sola volta.

  4. #4
    Guest

    Predefinito

    E' un errore di concetto.

    Click = Click 'Un click è un click.
    Click + Click = DbClick 'Due click sono due click che formano un doppio click.

    Concludendo col doppio click richiami sia la funzione associata a onclick che dblclick.

    Bye

  5. #5
    esotica non è connesso Utente giovane
    Data registrazione
    08-05-2008
    Messaggi
    87

    Predefinito

    OK ... grazie della risposta ... ora e' chiaro.

    Pero' una cosa mi sembra che non quadri, perche' IE non apre la nuova finestra ?
    Ho verificato e quando faccio il doppio click esegue la funzione associata all'ONDBLCLICK, pero' non la apre ...
    Poi, come mi hai detto, esegue anche la ONCLICK sulla pagina di partenza. E qui OK.

    Perche' stavo pensando, di far un history.back() sulla pagina di partenza, e cosi' tutto dovrebbe andare, ma se IE non mi apre la pagina nuova, e' inutile.


    Forse ho capito, IE mi da' un errore che pero' non capisco ...

    Linea: 482
    Carattere: 4
    Errore: Argomento non valido
    Codice: 0

    Precisamente:
    Codice HTML:
    	function pulsante_uno(button, collegamento) {
    		var pagina = "";
    
    switch (button) {
    	case 0:
    		pagina = "pagina_0.php";
    		break;
    	case 1:
    		pagina = "pagina_1.php";
    		break;
    	case 2:
    		pagina = "pagina_2.php";
    		break;
    	case 3:
    		pagina = "pagina_3.php";
    		break;
    	case 5:
    		pagina = "pagina_5.php";
    		break;
    	case 6:
    		pagina = collegamento;
    		break;
    }   /* QUESTA E' LA LINEA 482 !*/
    
    		window.location.href=pagina; /* questo in FF fa ricaricare la pagina di partenza e quindi non fa eseguire la funzione legata all'evento ONCLICK, almeno questo ho capito */
    	}
    PS: i commenti li ho aggiunti qui, non ci sono nella pagina reale.

    Ultima modifica di esotica : 27-07-2008 alle ore 13.13.21

  6. #6
    Guest

    Predefinito

    Ie e firefox hanno dei motori di rendering diversi, e spesso i risultati sono più che differenti, posso dirti che ie restituisce spesso errori javascript di quel tipo mentre firefox no.

    Colpa di un browser se così possiamo chiamarlo.

  7. #7
    esotica non è connesso Utente giovane
    Data registrazione
    08-05-2008
    Messaggi
    87

    Predefinito

    pero' in questo caso, quell'errore ha un effetto devastante (par la mia pagina):

    - interrompe l'esecuzione della funzione (penso),
    - quindi non apre la nuova finestra e non ricarica la pagina chiamante;

    - con ulteriore conseguenza che esegue la funzione legata all'ONCLICK (caricando la pagina in quella chiamante).

    Non c'e' modo di bypassare ? Che so disabilitando il controllo errori e poi riattivandolo ?

  8. #8
    Guest

    Predefinito

    Sinceramente ti consiglierei di usare le finestre modali, javascript così è troppo intrusivo.

    Pensa ai crawler...

  9. #9
    Guest

    Predefinito

    ciaoo a tuttii ki mi puo aiutare ??? vi prego ho fatto tutta l'iscrizione ma nn riesco ad entrare nel sito !!!! da dove posso prendere index.html MA COME SI FAAAAAAAA SE VOLETE VI DO LA PASSWORD BASTA KE BE MO AGGISTATE GRAZIEEE

    Edit : Svacant
    Sei arrivato da poco e posso comprendere l'ignoranza dato che sei un newbie, però per prima cosa la password non devi darla a nessuno, secondo leggi il regolamento e prova a chiedere aiuto sulla giusta stanza e terzo non replicare qui!.
    Ultima modifica di svacant : 27-07-2008 alle ore 17.23.30 Motivo: Ot

  10. #10
    esotica non è connesso Utente giovane
    Data registrazione
    08-05-2008
    Messaggi
    87

    Predefinito

    "finestre modali" ???

    "crawler" ???

    scusa la mia ignoranza ma non conosco nulla i cio' ... e nemmeno ci vado vicino (almeno penso).

    Ho cercato con google ma a parte domande specifiche non ho trovato niente che spieghi le "finestre modali".
    Mi dai un'infarinatura o almeno un punto di partenza ?

    GRAZIE

    PS: per l'intermedio, prova aschiacciare "pannello di controllo" di fianco a "Benvenuto, tuo_nome".

  11. #11
    Guest

    Predefinito

    Le finestre modali sono "popup" più modernizzati (vedi thickbox, lightbox)

    I crawler vengono a vedere i contenuti del tuo sito per indicizzarli nei motori e a loro javascript non piace molto :D

  12. #12
    esotica non è connesso Utente giovane
    Data registrazione
    08-05-2008
    Messaggi
    87

    Predefinito

    Ho guardato thickbox. Piu' o meno ho capito anche perche' e' tutta roba gia' pronta.

    Solo non so se si possono legare i due eventi ONCLICK e ONDBLCLICK facendo aprire due pagine diverse.

    forse se con javascript faccio cambiare il valore di HREF. Solo che non conosco la sintassi.

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •