猿问

求大神解答关于这行代码的意思????在线等

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>移动效果(按轨迹移动)</title><style type="text/css">body,div{margin:0;padding:0;}div{position:absolute;width:66px;height:45px;background:url(img/1.gif) no-repeat;top:100px;left:50px;}p,input{margin:10px;}</style><script type="text/javascript">window.onload = function (){	var oDiv = document.getElementsByTagName("div")[0];	var aInput = document.getElementsByTagName("input");	var oP = document.getElementsByTagName("p")[0];	var i = 0;		aInput[0].onclick = function (event)	{		
		(event || window.event).cancelBubble = true;		clearEvent();		this.value += "(已激活)";		oP.innerHTML = "鼠标点击页面, 人物将移动至鼠标位置!";		document.onclick = function (event)		{			var event = event || window.event;			oDiv.style.background = "url(img/2.gif) no-repeat";			startMove(oDiv, {x:event.clientX, y:event.clientY}, function(){oDiv.style.background = "url(img/1.gif) no-repeat"});			return false;		}	
	};		aInput[1].onclick = function (event)	{		
		(event || window.event).cancelBubble = true;		clearEvent();		this.value += "(已激活)";		oP.innerHTML = "按住鼠标左键,在页面划动,人物将按照鼠标轨迹移动。"		var aPos = [{x:oDiv.offsetLeft, y:oDiv.offsetTop}];		document.onmousedown = function (event)		{			var event = event || window.event;			
			aPos.push({x:event.clientX, y:event.clientY});			document.onmousemove = function (event)			{				var event = event || window.event;				aPos.push({x:event.clientX, y:event.clientY});	
				return false;			}			return false;		}		document.onmouseup = function ()		{			document.onmousemove = null;			oDiv.style.background = "url(img/2.gif) no-repeat";		
			var timer = setInterval(function ()			{				if(aPos.length == 0)				{					clearInterval(timer);					oDiv.style.background = "url(img/1.gif) no-repeat";					return;	
				};				oDiv.style.left = aPos[0].x + "px";				oDiv.style.top = aPos[0].y + "px";				aPos.shift();			}, 30);		};	}		function clearEvent()	{		document.onclick = null;		document.onmousedown = null;		document.onmousemove = null;		document.onmouseup = null;		for (i = 0; i < aInput.length; i++)		{			aInput[i].value = aInput[i].value.replace("(已激活)", "");			aInput[i].onmousedown = aInput[i].onmouseup = function (event)			{				(event || window.event).cancelBubble = true;	
			};		}	}};function startMove(obj, oTarget, fnEnd){	clearInterval(obj.timer);	obj.timer = setInterval(function ()	{		doMove(obj, oTarget, fnEnd)	
	}, 30)	
}function doMove(obj, oTarget, fnEnd){	var iX = (oTarget.x - obj.offsetLeft) / 5;	var iY = (oTarget.y - obj.offsetTop) / 5;	iX = iX > 0 ? Math.ceil(iX) : Math.floor(iX);	iY = iY > 0 ? Math.ceil(iY) : Math.floor(iY);	if (oTarget.x == obj.offsetLeft && oTarget.y == obj.offsetTop)	{		clearInterval(obj.timer);		fnEnd && fnEnd();	
	}	else	{		obj.style.left = obj.offsetLeft + iX + "px";		obj.style.top = obj.offsetTop + iY + "px";	
	}}</script></head><body><input type="button" value="根据鼠标点击位置移动" /><input type="button" value="根据标鼠标轨迹移动" /><p>请点击按钮激活功能!</p><div></div></body></html>
这一句跟apos之间是什么关系呢?求解答一下。
慕粉3686312
浏览 1618回答 2
2回答

qq_哪吒

根据鼠标点击的按钮触发事件图像根据鼠标点击的位置移动图像根据鼠标按住左键的移动而移动apos是用来定位鼠标位置

guoyou

这是一堆代码......
随时随地看视频慕课网APP
我要回答