div容器中的图片拖动 俺的创作
2010-08-20 11:20
330 查看
<div id="div1" style="overflow:hidden; cursor:move; background-color:#CCCCCC; width:90%; height:90%;">
<img src="Winter.jpg" style="position:absolute; left:0px; top:0px;" onmousemove="return false;">
</div>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript" defer="defer">
function Point(x,y){
this.x=x;
this.y=y;
return this;
}
function getMouseXY(e){
return new Point(Event.pointerX(e),Event.pointerY(e));
}
var dragStartPoint=null;
var dragStartLeft=null;
var dragStartTop=null;
var mapLayer = $("div1");
function dragStart(){
Event.observe(mapLayer, "mousedown", setStartVar, false);
Event.observe(document, "mousemove", movingMap, false);
Event.observe(document, "mouseup", dargClear, false);
}
dragStart();
function setStartVar(){
dragStartPoint = getMouseXY(window.event);
with(mapLayer.firstChild){
dragStartLeft = style.pixelLeft;
dragStartTop = style.pixelTop;
}
}
function movingMap(){
if(dragStartPoint==null&&dragStartLeft==null&&dragStartTop==null)
return;
var mousePoint = getMouseXY(window.event);
with(mapLayer.firstChild){
style.left = dragStartLeft + (mousePoint.x - dragStartPoint.x) + "px";
style.top = dragStartTop + (mousePoint.y - dragStartPoint.y) + "px";
}
}
function dargClear(){
dragStartPoint=null;
dragStartLeft=null;
dragStartTop=null;
}
function dargEnd(){
dargClear();
Event.stopObserving(mapLayer, "mousedown", setStartVar, false);
Event.stopObserving(document, "mousemove", movingMap, false);
Event.stopObserving(document, "mouseup", dargClear, false);
}
</script>
<img src="Winter.jpg" style="position:absolute; left:0px; top:0px;" onmousemove="return false;">
</div>
<script type="text/javascript" src="prototype.js"></script>
<script type="text/javascript" defer="defer">
function Point(x,y){
this.x=x;
this.y=y;
return this;
}
function getMouseXY(e){
return new Point(Event.pointerX(e),Event.pointerY(e));
}
var dragStartPoint=null;
var dragStartLeft=null;
var dragStartTop=null;
var mapLayer = $("div1");
function dragStart(){
Event.observe(mapLayer, "mousedown", setStartVar, false);
Event.observe(document, "mousemove", movingMap, false);
Event.observe(document, "mouseup", dargClear, false);
}
dragStart();
function setStartVar(){
dragStartPoint = getMouseXY(window.event);
with(mapLayer.firstChild){
dragStartLeft = style.pixelLeft;
dragStartTop = style.pixelTop;
}
}
function movingMap(){
if(dragStartPoint==null&&dragStartLeft==null&&dragStartTop==null)
return;
var mousePoint = getMouseXY(window.event);
with(mapLayer.firstChild){
style.left = dragStartLeft + (mousePoint.x - dragStartPoint.x) + "px";
style.top = dragStartTop + (mousePoint.y - dragStartPoint.y) + "px";
}
}
function dargClear(){
dragStartPoint=null;
dragStartLeft=null;
dragStartTop=null;
}
function dargEnd(){
dargClear();
Event.stopObserving(mapLayer, "mousedown", setStartVar, false);
Event.stopObserving(document, "mousemove", movingMap, false);
Event.stopObserving(document, "mouseup", dargClear, false);
}
</script>
相关文章推荐
- 鼠标拖动改变div容器的大小
- css让图片自适应容器(div)大小
- 固定div容器的宽高,图片居中(图片不限制大小)
- 图片IMG与容器下边界有空隙的解决方法-Div+CSS教程
- 可随便拖动的对象(div,图片等)
- 让文本或图片在div容器中垂直居中
- Div垂直居中及容器内图片垂直居中的CSS解决方法
- 图片img与div容器下有间隔的解决方法
- div图片img与div容器下有距离的处理办法
- div容器自增长后其内的背景色或图片随之增长
- 在IE6.0下面鼠标拖动Div背景图片重新加载解决方案
- Behavior模型应用:可拖动的div容器
- 图片随外层容器<div>的大小而改变大小
- css让图片自适应容器(div)大小,超便捷响应式图片自适应
- 让文本或图片在div容器中垂直居中
- 如何设置图片、文字在容器(div)中垂直居中的显示?
- js拖动div或图片
- Behavior模型应用:可拖动的div容器
- 图片img与div容器下有间隔的解决方法
- 如何设置图片、文字在容器(div)中垂直居中的显示?