12557: suche ein motion scroll skript *

hallo leute ich hab mal wieder eine frage. ich benutze aktuell dieses
skript für ein scroll on button. ich hätte es nun doch lieber animiert. also so ein motion scroll wie auch immer sich das nennt. hat jemand von euch eine gutes skript in petto?

würde mich sehr freuen. vielen dank im vorraus
besten gruss matthias

<script type="text/javascript">  
function Pos100 () {  
  window.scrollTo(100, 2000);  
}  
  
  
function Pos200 () {  
  window.scrollTo(100, 4100);  
}  
  
  
  
  
  
function Pos300 () {  
  window.scrollTo(100, 6200);  
  
}  
  
  
function Pos350 () {  
  window.scrollTo(100, 8300);  
  
}  
  
  
function Pos400 () {  
  window.scrollTo(100, 0);  
}  
  
  
</script>  
  
  

  1. Moin Moin!

    Dir ist der Unterschied zwischen Self und Get bewußt? Frag mal Tante Google, oder zeig Deinen Versuch, so ein Script zu bauen, und erkläre, wo es klemmt.

    Alexander

    --
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
    1. ja du hast recht. danke dir. so ich hab jetzt ein scroll gefunden. es funktioniert auch super. aber jetzt hab ich ein problem was gelöst werden will! das animierte scrollen geht aber nicht aus meinen links die auf einem bild liegn also nicht aus diesem befehl:

        
      <area shape="rect" coords="26,128,91,151" href="#bau" target="_self" alt="gebaute projekte architektur modelle design inneneinrichtungen" />
      

      weiß da jemand warum das nicht geht? meine lösung wäre das ganze auseinander zu schneiden. gibt es noch eine bessere möglichkeit?

      vielen dank euch allen
      besten gruss matthias

  2.   
    /*--------------------------------------------------------------------------  
     *  Smooth Scroller Script, version 1.0.1  
     *  (c) 2007 Dezinerfolio Inc. <midart@gmail.com>  
     *  
     *  For details, please check the website : http://dezinerfolio.com/  
     *  
    /*--------------------------------------------------------------------------*/  
      
    Scroller = {  
    	// control the speed of the scroller.  
    	// dont change it here directly, please use Scroller.speed=50;  
    	speed:10,  
      
    	// returns the Y position of the div  
    	gy: function (d) {  
    		gy = d.offsetTop  
    		if (d.offsetParent) while (d = d.offsetParent) gy += d.offsetTop  
    		return gy  
    	},  
      
    	// returns the current scroll position  
    	scrollTop: function (){  
    		body=document.body  
    	    d=document.documentElement  
    	    if (body && body.scrollTop) return body.scrollTop  
    	    if (d && d.scrollTop) return d.scrollTop  
    	    if (window.pageYOffset) return window.pageYOffset  
    	    return 0  
    	},  
      
    	// attach an event for an element  
    	// (element, type, function)  
    	add: function(event, body, d) {  
    	    if (event.addEventListener) return event.addEventListener(body, d,false)  
    	    if (event.attachEvent) return event.attachEvent('on'+body, d)  
    	},  
      
    	// kill an event of an element  
    	end: function(e){  
    		if (window.event) {  
    			window.event.cancelBubble = true  
    			window.event.returnValue = false  
          		return;  
        	}  
    	    if (e.preventDefault && e.stopPropagation) {  
    	      e.preventDefault()  
    	      e.stopPropagation()  
    	    }  
    	},  
    	  
    	// move the scroll bar to the particular div.  
    	scroll: function(d){  
    		i = window.innerHeight || document.documentElement.clientHeight;  
    		h=document.body.scrollHeight;  
    		a = Scroller.scrollTop()  
    		if(d>a)  
    			if(h-d>i)  
    				a+=Math.ceil((d-a)/Scroller.speed)  
    			else  
    				a+=Math.ceil((d-a-(h-d))/Scroller.speed)  
    		else  
    			a = a+(d-a)/Scroller.speed;  
    		window.scrollTo(0,a)  
    	  	if(a==d || Scroller.offsetTop==a)clearInterval(Scroller.interval)  
    	  	Scroller.offsetTop=a  
    	},  
    	// initializer that adds the renderer to the onload function of the window  
    	init: function(){  
    		Scroller.add(window,'load', Scroller.render)  
    	},  
      
    	// this method extracts all the anchors and validates then as # and attaches the events.  
    	render: function(){  
    		a = document.getElementsByTagName('a');  
    		Scroller.end(this);  
    		window.onscroll  
    	    for (i=0;i<a.length;i++) {  
    	      l = a[i];  
    	      if(l.href && l.href.indexOf('#') != -1 && ((l.pathname==location.pathname) || ('/'+l.pathname==location.pathname)) ){  
    	      	Scroller.add(l,'click',Scroller.end)  
    	      		l.onclick = function(){  
    	      			Scroller.end(this);  
    		        	l=this.hash.substr(1);  
    		        	 a = document.getElementsByTagName('a');  
    				     for (i=0;i<a.length;i++) {  
    				     	if(a[i].name == l){  
    				     		clearInterval(Scroller.interval);  
    				     		Scroller.interval=setInterval('Scroller.scroll('+Scroller.gy(a[i])+')',10);  
    						}  
    					}  
    				}  
    	      	}  
    		}  
    	}  
    }  
    // invoke the initializer of the scroller  
    Scroller.init();  
      
      
    /*------------------------------------------------------------  
     *						END OF CODE  
    /*-----------------------------------------------------------*/
    

    könnte man hier gegebenfall etwas ändern so das er nicht nur die #befehle benutzt sondern vielecht *befehle? ich hab das gefühl das die # kollidiert mit den area shape maps die auch mit raute bezeichnet wird. das ist mir gerade so eingefallen!