[此文来源于互联网,牛C网只负责收集整理]
以前在网上看到的最简单的拖动对象的代码,忘记作者叫什么了。原始代码在IE下有些小问题,并且声明了文档类型为xhtml 1.0后,在FF等非IE浏览器下无效,对其进行了改进,现在已经可兼容:IE、Firefox、Opera ...
以下代码只是演示原理,具体应用请结合你自己的实际需求进行修改。
<!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" lang="gb2312">
<head>
<title> 代码实例:拖动对象 Drag Object (兼容:IE、Firefox、Opera ... )</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<meta name="editor" content="枫岩,http://www.cnlei.com">
<meta name="keywords" content="代码实例:拖动对象">
<meta name="description" content="最简短的拖动对象代码实例演示">
<style>
.dragAble {position:relative;cursor:move;}
</style>
<script language="javascript">
<!--
// Author: Unkonw
// Modify: 枫岩@CnLei.com
var ie=document.all;
var nn6=document.getElementById&&!document.all;
var isdrag=false;
var y,x;
var oDragObj;
function moveMouse(e) {
if (isdrag) {
oDragObj.style.top = (nn6 ? nTY e.clientY - y : nTY event.clientY - y) "px";
oDragObj.style.left = (nn6 ? nTX e.clientX - x : nTX event.clientX - x) "px";
return false;
}
}
function initDrag(e) {
var oDragHandle = nn6 ? e.target : event.srcElement;
var topElement = "HTML";
while (oDragHandle.tagName != topElement && oDragHandle.className != "dragAble") {
oDragHandle = nn6 ? oDragHandle.parentNode : oDragHandle.parentElement;
}
if (oDragHandle.className=="dragAble") {
isdrag = true;
oDragObj = oDragHandle;
nTY = parseInt(oDragObj.style.top 0);
y = nn6 ? e.clientY : event.clientY;
nTX = parseInt(oDragObj.style.left 0);
x = nn6 ? e.clientX : event.clientX;
document.onmousemove=moveMouse;
return false;
}
}
document.onmousedown=initDrag;
document.onmouseup=new Function("isdrag=false");
//-->
</script>
</head>
<body>
<img src="http://www.iecn.net/images/user_icons/2006/10/01/u_35653.gif" class="dragAble" />
<img src="http://www.iecn.net/images/user_icons/2006/10/01/u_35653.gif" class="dragAble" />
<img src="http://www.iecn.net/images/user_icons/2006/10/01/u_35653.gif" class="dragAble" /><br /><br />
<div style="border:1px solid #ff6d00;background:#ffd801;width:240px;padding:5px 0;" class="dragAble">这些都是可拖动对象</div>
</body>
</html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="gb2312">
<head>
<title> 代码实例:拖动对象 Drag Object (兼容:IE、Firefox、Opera ... )</title>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<meta name="editor" content="枫岩,http://www.cnlei.com">
<meta name="keywords" content="代码实例:拖动对象">
<meta name="description" content="最简短的拖动对象代码实例演示">
<style>
.dragAble {position:relative;cursor:move;}
</style>
<script language="javascript">
<!--
// Author: Unkonw
// Modify: 枫岩@CnLei.com
var ie=document.all;
var nn6=document.getElementById&&!document.all;
var isdrag=false;
var y,x;
var oDragObj;
function moveMouse(e) {
if (isdrag) {
oDragObj.style.top = (nn6 ? nTY e.clientY - y : nTY event.clientY - y) "px";
oDragObj.style.left = (nn6 ? nTX e.clientX - x : nTX event.clientX - x) "px";
return false;
}
}
function initDrag(e) {
var oDragHandle = nn6 ? e.target : event.srcElement;
var topElement = "HTML";
while (oDragHandle.tagName != topElement && oDragHandle.className != "dragAble") {
oDragHandle = nn6 ? oDragHandle.parentNode : oDragHandle.parentElement;
}
if (oDragHandle.className=="dragAble") {
isdrag = true;
oDragObj = oDragHandle;
nTY = parseInt(oDragObj.style.top 0);
y = nn6 ? e.clientY : event.clientY;
nTX = parseInt(oDragObj.style.left 0);
x = nn6 ? e.clientX : event.clientX;
document.onmousemove=moveMouse;
return false;
}
}
document.onmousedown=initDrag;
document.onmouseup=new Function("isdrag=false");
//-->
</script>
</head>
<body>
<img src="http://www.iecn.net/images/user_icons/2006/10/01/u_35653.gif" class="dragAble" />
<img src="http://www.iecn.net/images/user_icons/2006/10/01/u_35653.gif" class="dragAble" />
<img src="http://www.iecn.net/images/user_icons/2006/10/01/u_35653.gif" class="dragAble" /><br /><br />
<div style="border:1px solid #ff6d00;background:#ffd801;width:240px;padding:5px 0;" class="dragAble">这些都是可拖动对象</div>
</body>
</html>
作者:gdgzboy@牛C网
地址:http://www.niuc.net/post/3293/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
牛C网推荐您再看看以下日志:
限量版广告 1个IP一天只弹一次的AD代码
Javascript实现页内查找关键词实例
JavaScript应用实例-点出统计器
Javascript代码在浏览器IE和Firefox兼容性的16个问题
制作网页技巧-通过JavaScript实现页面自适应
技巧分析-用javascript 转换外部CSS超级链接样式
Javascript获得当前网页页面详细地址的实现
用javascript 转换外部链接样式
提高-如何优化JavaScript脚本的性能
谈谈个人地方分类网站的推广和赢利
限量版广告 1个IP一天只弹一次的AD代码
Javascript实现页内查找关键词实例
JavaScript应用实例-点出统计器
Javascript代码在浏览器IE和Firefox兼容性的16个问题
制作网页技巧-通过JavaScript实现页面自适应
技巧分析-用javascript 转换外部CSS超级链接样式
Javascript获得当前网页页面详细地址的实现
用javascript 转换外部链接样式
提高-如何优化JavaScript脚本的性能
谈谈个人地方分类网站的推广和赢利
滑动展开/收缩广告代码实例效果
使用Ajax时的十个常犯的错误





