<style type="text/css">
div{
 width:200px;
 height:200px;
 background-color:#333333;
 position:absolute;
 float:left;
}
</style>
<script>
var chick=0;
  var _x;
  var _y;function pre_go()
{
check=1;
 //var xx = event.clientX;
 var xx = event.x?event.x:event.PageX;   
 //var yy = event.clientY;           
 var yy = event.y?event.y:event.PageY;   
 var x1 = document.getElementById("roll").style.left;
 var y1 = document.getElementById("roll").style.top;
 
  x1=x1.substring(0,x1.length-2);  
  y1=y1.substring(0,y1.length-2); 
  _x=xx-x1; 
  _y=yy-y1;
}function _go()
{
if(check==1)
{var x=event.x?event.x:event.PageX;
var y=event.y?event.y:event.PageY; 
document.getElementById("roll").style.left=x-_x;
document.getElementById("roll").style.top=y-_y;}
}
function _stop()
{
check=0;
}
</script>
这是我在网上找来的一段代码,放在一个单页里测试就可以实现拖动DIV的效果,但是把它放到实际的网页里,就失效了,请问为什么啊?是因为程序里的DIV被套在其它的DIV里了么? 求解答

解决方案 »

  1.   

    那要看你实际页面是怎么样的了,比如元素是不是absolute之类的啊
    看一下js报什么错
      

  2.   

    这代码 IE only! 楼主去找找兼容好点的div{
     width:200px;
     height:200px;
     background-color:#333333;
     position:absolute;
     float:left;
    }
    这样所有div 都应用这个样式了
      

  3.   

    第一:你的div样式是否与实际网页里的样式冲突?
    第二:测试页中的clientX等等这些涉及到位置的属性 放到你的实际网页中是否不会改变?
      

  4.   

    你的css定义了DIV ,后面有没有引用其他的CSS文件把他的属性给覆盖掉了而使这次的设置没有生效