日期:2014-05-18  浏览次数:20389 次

200分求一个像163博客首页那样的可以随意拖动的程序!
我半年前看过这样的一个网站,知道这个程序原来是国外的一个程序,哪位知道有这个程序下载的,当然最好是中文版或者汉化的,没有英文版也行。我两百分送上,不够另开一贴给分。

------解决方案--------------------
帮顶
------解决方案--------------------
JS 的内容.

设置 DOM onMouseDown 事件.开始拖动.(拖动时改变DOM的位置)

这是原理

现在很多JS Framework 都可以干这些事.

http://jquery.com 很多这类的插件....
------解决方案--------------------
你的邮箱是什么,我发个代码给你看一下,是不是你想要的
------解决方案--------------------
asp.net ajax 或webpart就可以了...或自己写js控制也行...
------解决方案--------------------
jiaoke() 麻烦给我发一份 zxq_ch@163.com
------解决方案--------------------
路过
------解决方案--------------------
HTML 部分


<html>
<head>
<title> DRAG the DIV </title>
<style>
*{font-size:12px}
.dragTable{
font-size:12px;
border-top:1px solid #3366cc;
margin-bottom: 10px;
width:100%;
background-color:#FFFFFF;
}
.dragTR{
cursor:move;
color:#7787cc;
background-color:#e5eef9;
}
td{vertical-align:top;}
#parentTable{
border-collapse:collapse;
letter-spacing:25px;
}
</style>
<script src= "xmlhttp.js " language= "javascript " type= "text/javascript "> </script>
<script defer>
var draged=false;
tdiv=null;
function dragStart(){
ao=event.srcElement;
if((ao.tagName== "TD ")||(ao.tagName== "TR "))ao=ao.offsetParent;
else return;
draged=true;
tdiv=document.createElement( "div ");
tdiv.innerHTML=ao.outerHTML;
tdiv.style.display= "block ";
tdiv.style.position= "absolute ";
tdiv.style.filter= "alpha(opacity=70) ";
tdiv.style.cursor= "move ";
tdiv.style.width=ao.offsetWidth;
tdiv.style.height=ao.offsetHeight;
tdiv.style.top=getInfo(ao).top;
tdiv.style.left=getInfo(ao).left;
document.body.appendChild(tdiv);
lastX=event.clientX;
lastY=event.clientY;
lastLeft=tdiv.style.left;
lastTop=tdiv.style.top;
try{
ao.dragDrop();
}catch(e){}
}
function draging(){//重要:判断MOUSE的位置
if(!draged)return;
var tX=event.clientX;
var tY=event.clientY;
tdiv.style.left=parseInt(lastLeft)+tX-lastX;
tdiv.style.top=parseInt(lastTop)+tY-lastY;
for(var i=0;i <parentTable.cells.length;i++){
var parentCell=getInfo(parentTable.cells[i]);
if(tX> =parentCell.left&&tX <=parentCell.right&&tY> =parentCell.top&&tY <=parentCell.bottom){
var subTables=parentTable.cells[i].getElementsByTagName( "table ");
if(subTables.length==0){
if(tX> =parentCell.left&&tX <=parentCell.right&&tY> =parentCell.top&&tY <=parentCell.bottom){
parentTable.cells[i].appendChild(ao);
}
break;
}
for(var j=0;j <subTables.length;j++){
var subTable=getInfo(subTables[j]);
if(tX> =subTable.left&&tX <=subTable.right&&tY> =subTable.top&&tY <=subTable.bottom){
parentTable.cells[i].insertBefore(ao,subTables[j]);
break;
}else{
parentTable.cells[i].appendChild(ao);
}
}
}