当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 网页最简短的拖动对象代码实例演示

Javascript
ExtJS 2.0实用简明教程 之ExtJS版的Hello
ExtJS 2.0 实用简明教程之布局概述
ExtJS 2.0实用简明教程之应用ExtJS
ExtJS 2.0实用简明教程 之获得ExtJS
javascript 扫雷游戏
ExtJS 2.2.1的grid控件在ie6中的显示问题
jquery-1.2.6得到焦点与失去焦点的写法
一组JS创建和操作表格的函数集合
extjs fckeditor集成代码
jquery 实现京东商城、凡客商城的图片放大效果
jQuery 技巧大全(新手入门篇)
JavaScript设置FieldSet展开与收缩
event.keyCode键码值表 附只能输入特定的字符串代码
js 图片缩放特效代码
jquery(1.3.2) 高亮选中图片边框
js 使用方法与函数 总结
Js 本页面传值实现代码
javascript获取div的内容 精华篇
innerText innerHTML的用法以及注意事项 [推荐]
jquery 圆角遮罩图片实现图片圆角

Javascript 中的 网页最简短的拖动对象代码实例演示


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-04   浏览: 450 ::
收藏到网摘: n/a

以前在网上看到的最简单的拖动对象的代码,忘记作者叫什么了。原始代码在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://webdesign.chinaitlab.com/UploadFiles_8014/200612/20061202115506895.gif" class="dragAble" /> 
<img src="http://webdesign.chinaitlab.com/UploadFiles_8014/200612/20061202115506895.gif" class="dragAble" /> 

<img src="http://webdesign.chinaitlab.com/UploadFiles_8014/200612/20061202115506895.gif" class="dragAble" /><br /><br /> 
<div style="border:1px solid #ff6d00;background:#ffd801;width:240px;padding:5px 0;" class="dragAble">这些都是可拖动对象</div> 
</body> 
</html>