Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074

    anticipare funzione scrollTop

    Ho una funzione JS che ne richiama un'altra, quando lo scroll della pagina raggiunge il margine inferiore. Questo il codice:
    Codice PHP:
    if  ($(window).scrollTop() == $(document).height() - $(window).height()){
    // chiama altra funzione;

    Quello che vorrei è che la funzione principale entrasse in azione prima che lo scroll di pagina raggiungesse il fondo, diciamo 2/300 pixel prima...
    Come devo scrivere la stringa? Ho fatto vari tentativi, ma sempre ottenendo l'unico risultato di non farla più funzionare!...
    metatad
    graphic & web design

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    Up?
    metatad
    graphic & web design

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

    Re: anticipare funzione scrollTop

    prova
    Codice PHP:
    if  ($(window).scrollTop() >= $(document).height() - $(window).height() -200){
    // chiama altra funzione;


  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    Ci avevo già provato, e l'ho fatto comunque di nuovo, ma inserendo questa variazione la funzione non scatta proprio più...
    Anche raggiungendo il fondo della pagina, la funzione richiamata dalla condizione if ($(window).scrollTop() ... non viene più eseguita.
    metatad
    graphic & web design

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    a me risulta funzionare
    se a te risulta il contrario ci sara' altro che non posso immaginare senza vedere una pagina completa

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    Guarda, questo è il JS completo:
    Codice PHP:
    <script type="text/javascript"
    // incrementa 
    var numero 1
    function 
    incrementa() {     
    numero parseInt(numero)+1

    // request ajax 
    function createRequestObject() {  
    var 
    ro;  
    var 
    browser navigator.appName;  
    if (
    browser == "Microsoft Internet Explorer") {  
    ro = new ActiveXObject("Microsoft.XMLHTTP");  
    } else {  
    ro = new XMLHttpRequest();  
    }  
    return 
    ro;  
    }  
    var 
    http createRequestObject(); 
    function 
    sndReq(action) { 
    http.open('get''loadata.php?action='+action);  
    http.onreadystatechange handleResponse;  
    http.send(null); 
    }  
    function 
    handleResponse() {  
    if (
    http.readyState == 4) {  
    var 
    response http.responseText;  
    document.getElementById("newload"+numero).innerHTML responseincrementa();     


    function 
    handleResponse() { 
    if (
    http.readyState == 4) { var response http.responseText
    var 
    el=document.getElementById("newload"+numero); el.innerHTML response
    incrementa();      


    </script>
    <script type="text/javascript"> 
    // scroll + new load     
    $(document).ready(function(){
    $(window).scroll(function(){             
    if ($(window).scrollTop() == $(document).height() - $(window).height() [COLOR=red]- 200[/COLOR]) {                 
    sndReq('step'+numero); 
    }         
    });      
    }); 
    </script> 
    Senza l'aggiunta (evidenziata in rosso) del - 200 funziona tutto, ma appena l'aggiungo non va più...
    metatad
    graphic & web design

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Tu fai un confronto esatto == mentre Xinod (correttamente) t'ha proposto superiore/uguale >= non è che il problema sta li?
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    No, anche mettendo >= al posto di == continua a non funzionare...
    metatad
    graphic & web design

  9. #9
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    probabilmente perche' com' era prima scatta una volta sola,
    mentre cosi' scatta molte molte volte
    e ogni volta cerca di far partire una richiesta ajax, richieste che si accavallano...
    insomma, il problema non e' nel controllo in se', ma in quello che succede dopo

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2001
    residenza
    Napoli, Italia
    Messaggi
    1,074
    mmmmhh... non so se poi sia proprio così, perchè non sembra esserci alcuna re-azione allo scroll... in ogni caso, il (mio) problema rimane: come posso far si che la funzione venga richiamata prima che lo scroll arrivi al fondo pagina?
    metatad
    graphic & web design

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.