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

    Ricavare evento scroll verticale

    ciao a tutti,
    c'è un modo per ricavera quando in una pagine viene effettuato lo scroll solo verticale (e non quello orizzontale)?
    Mi serve perchè quando viene effettuato lo scroll verticale devo disattivare una proprietà.

    Grazie
    Troppo difficile cambiare, essere normale!!


    JoomlaPost

  2. #2
    beh, c'è l'evento onscroll che fa al caso tuo:

    questa funzione controlla se la pagina ha scrollato in verticale:

    codice:
    var precedentVerticalScroll;
    window.onload = function(){
    	precedentVerticalScroll = getScrollXY()[1];
    	
    }
    window.onscroll = function(e){
    	var evt = window.event || e;
    	var elem = evt.target || evt.srcElement;
    	if(typeof elem.body != undefined)
    	{
    		var logger = document.getElementById("Logger");
    		var newScroll = getScrollXY()[1];
    		logger.innerHTML = "Precendet: "+precedentVerticalScroll+" Now: "+newScroll;
    		if(newScroll != precedentVerticalScroll){
    			//È stato modificato lo scroll verticale
    			precedentVerticalScroll = newScroll;
    		}
    	}
    }
    
    //Questa l'ho presa da http://www.howtocreate.co.uk/tutoria.../browserwindow
    function getScrollXY() {
      var scrOfX = 0, scrOfY = 0;
      if( typeof( window.pageYOffset ) == 'number' ) {
        //Netscape compliant
        scrOfY = window.pageYOffset;
        scrOfX = window.pageXOffset;
      } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
        //DOM compliant
        scrOfY = document.body.scrollTop;
        scrOfX = document.body.scrollLeft;
      } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
        //IE6 standards compliant mode
        scrOfY = document.documentElement.scrollTop;
        scrOfX = document.documentElement.scrollLeft;
      }
      return [ scrOfX, scrOfY ];
    }
    I DON'T Double Click!

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.