最简短的拖动对象js代码实例

作者:CNLei 来源:CNLei.blog 时间:2007-10-09 13:33:00 

以前在网上看到的最简单的拖动对象的代码,忘记作者叫什么了。

原始代码在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 ... ) - asp之家 - http://www.aspxhome.com </title>
<meta http-equiv="content-type" content="text/html; charset=gb2312" />
<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="https://www.aspxhome.com/images/logo.gif" class="dragAble" />
<img src="https://www.aspxhome.com/images/logo.gif" class="dragAble" />
<img src="https://www.aspxhome.com/images/logo.gif" class="dragAble" /><br /><br />
<div style="border:1px solid #ff6d00;background:#ffd801;width:240px;padding:5px 0;" class="dragAble">这些都是可拖动对象</div>
</body>
</html>

运行:最简短的拖动对象代码实例演示

相关文章推荐:js仿googl拖拽效果

标签:拖动,代码,js
0
投稿

猜你喜欢

  • Python自动生成代码 使用tkinter图形化操作并生成代码框架

    2021-04-26 08:47:30
  • MySQL的InnoDB存储引擎的数据页结构详解

    2024-01-14 01:23:27
  • python多进程控制学习小结

    2021-08-31 00:48:57
  • python脚本打包后无法运行exe文件的解决方案

    2021-02-25 23:25:35
  • Python调用腾讯API实现人脸身份证比对功能

    2023-11-27 20:18:06
  • Python 中导入文本文件的示例代码

    2021-04-18 04:53:01
  • Python如何快速上手? 快速掌握一门新语言的方法

    2023-05-07 12:00:48
  • Python CSV模块使用实例

    2022-02-04 18:56:36
  • 利用Python实现面部识别的方法详解

    2021-02-08 05:00:57
  • Python yield 小结和实例

    2023-07-21 15:37:39
  • sql server 创建临时表的使用说明

    2024-01-16 18:30:23
  • 使用JavaScript和CSS实现文本隔行换色的方法

    2024-04-19 09:46:52
  • Python Opencv基于透视变换的图像矫正

    2022-03-13 16:47:14
  • JavaScript中filter的用法实例分析

    2024-04-10 10:59:42
  • pycharm 如何跳出服务器证书不受信任的提示

    2022-01-15 16:38:46
  • MySql存储过程与函数详解

    2024-01-13 16:32:56
  • python引入导入自定义模块和外部文件的实例

    2023-01-25 10:02:18
  • vue 解决异步数据更新问题

    2024-04-30 10:45:28
  • windows下mysql 5.7.20 安装配置方法图文教程

    2024-01-20 16:19:02
  • Python实现抓取网页并且解析的实例

    2022-01-12 13:24:53
  • asp之家 网络编程 m.aspxhome.com