问答详情
源自:1-3 实例JS+DOM

在这个实例中,鼠标滑到第四张图片的时候为什么第二张和第三张也向前移动?是因为for循环不管点第几个,都是从j=1开始运行的吗?

在这个实例中,鼠标滑到第四张图片的时候为什么第二张和第三张也向前移动?是因为for循环不管点第几个,都是从j=1开始运行的吗?

提问者:慕粉0943041209 2017-07-21 22:30

个回答

  • 慕粉0943041209
    2017-07-22 08:14:28

    这个实例,如果用jQuery,应该怎么写?

  • 慕粉0943041209
    2017-07-21 22:49:50

    http://img.mukewang.com/597214630001a80009970501.jpg

    window.onload=function(){
    	var cc=document.getElementsByClassName('ccc')[0];
    	var m=cc.getElementsByTagName("img");
    	var mWidth=m[0].offsetWidth;
    	var dWidth=160;
    	var aWidth=mWidth+(m.length-1)*dWidth;
    	cc.style.width=aWidth+"px";
    	function scc(){for(var i=1;i<m.length;i++){
    			m[i].style.left=mWidth+(i-1)*dWidth+"px";
    		}}
    		scc();
    
    	var moveWidth=mWidth-dWidth;
    	for(var i=0;i<m.length;i++){
    		(function(i){
    			m[i].onmouseover=function(){
    				scc();
    				for(var j=1;j<=i;j++){
    					m[j].style.left=parseInt(m[j].style.left,10)-moveWidth+"px";
    				}
    			}
    		})(i);
    	}
    
    }