网页代码库


图片展示代码

小方框中浏览大图

看看效果 2008.10.13

xhtml部分

<div id="pic" onmousedown="getmouseposition(event)" onmousemove="movestart(event)" onmouseup="movestop()" onmouseout="movestop()"> </div>

css部分

#pic {
	width:480px;
	height:320px;
	border: 3px solid #ccc;
	background: url(pic1.jpg) no-repeat;
	cursor: move;
}

JavaScript部分

var p = new Array();
var speed = 0.05;  //速度
var picWidth = 1280;  // 大图的宽高
var picHeight = 971;
var x,y // 鼠标点下去时背景的坐标
var x_new,y_new  //位移
var haveclick = false;

function getmouseposition(event) {
	if(document.all)
	{
		x = document.body.scrollLeft+event.clientX;
		y = document.body.scrollTop+event.clientY;
	}else
	{
		x = event.layerX;
		y = event.layerY;
	}	
	haveclick = true;
}
function movestop() {
	haveclick = false;
}
function movestart(event) {
	if(haveclick)
		{
		if(document.getElementById('pic').style.backgroundPosition.length==0)
			{document.getElementById('pic').style.backgroundPosition="0px 0px";}
		p = document.getElementById('pic').style.backgroundPosition.split(" ")

		if(document.all)
		{	
			x_new = document.body.scrollLeft+event.clientX;
			y_new = document.body.scrollTop+event.clientY;
		}else
		{	 
			x_new = event.layerX;
			y_new = event.layerY;	
		}
	
		x2 = (speed*(x_new-x)+parseInt(p[0])).toString(10);    // 计算位移量
		y2 = (speed*(y_new-y)+parseInt(p[1])).toString(10);
	
		if (x2<-picWidth+420) x2=-picWidth+420;
		if (y2>0) y2=0;
		if (x2>0) x2=0;
		if (y2<-picHeight+300) y2=-picHeight+300;
	
		document.getElementById('pic').style.backgroundPosition=x2+"px "+y2+"px";
	}
}

关于我

站长:皮成,致力于web前端技术。

网站:收集以web前端技术实现的网页实例,探讨网页实例背后的web前端技术。

Email:Strict.dtd[at]Gmail.com QQ:52541666