JavaScript实现文字与图片拖拽效果的方法


Posted in Javascript onFebruary 16, 2015

本文实例讲述了JavaScript实现文字与图片拖拽效果的方法。分享给大家供大家参考。具体实现方法如下:

<html>

<head>

<title>JavaScript实现文字与图片的拖拽效果</title>

<style type="text/css">

*{padding:0;margin:0;}

.tips{position:absolute;background:#eee;}

</style>

</head>

<body>

<div class="tips" id="tips1" onmouseover="dragF.drag('tips1');">

<img src="/images/skinslogo.gif"><br>图片可以拖动</div>

<div class="tips" id="tips2" onmouseover="dragF.drag('tips2');"><a href="https://3water.com" target="_blank">三水点靠木</a><br />拖动链接也可以

</div>

</body>

<script type="text/javascript">

var $id=function(id){return document.getElementById(id);}

var dragF={

 locked:false,

 lastObj:undefined,

 drag:function(obj){

  $id(obj).onmousedown=function(e){

   var e = e ? e : window.event;

   if(!window.event) {e.preventDefault();}/* 阻止标注<a href='/site/js-5791-1.html' target='_blank'><u>浏览器</u></a>下拖动a,img的默认事件 */

   dragF.locked=true;

     $id(obj).style.position="absolute";

   $id(obj).style.zIndex="100";

   if (dragF.lastObj&&dragF.lastObj!=$id(obj)) {/* 多元素拖动需要恢复上次元素状态 */

    dragF.lastObj.style.zIndex = "1";

   }

   dragF.lastObj=$id(obj);

   var tempX=$id(obj).offsetLeft;

   var tempY=$id(obj).offsetTop;

   dragF.x=e.clientX;

   dragF.y=e.clientY;

   document.onmousemove=function(e){

    var e = e ? e : window.event;

    if(dragF.locked==false) return false;

    $id(obj).style.left=tempX+e.clientX-dragF.x+"px";

    $id(obj).style.top=tempY+e.clientY-dragF.y+"px";

    if(window.event) {e.returnValue=false;}/* 阻止ie下a,img的默认事件 */

   }

   document.onmouseup=function(){

    dragF.locked=false;

   }

  }

 }

}

</script>

</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
javascript 对表格的行和列都能加亮显示
Dec 26 Javascript
div移动 输入框不能输入的问题
Nov 19 Javascript
JavaScript中的私有/静态属性介绍
Jul 26 Javascript
简述jQuery ajax的执行顺序
Jan 05 Javascript
JavaScript中for循环的几种写法与效率总结
Feb 03 Javascript
js转换对象为xml
Feb 17 Javascript
Vue.js仿Metronic高级表格(二)数据渲染
Apr 19 Javascript
js导出Excel表格超出26位英文字符的解决方法ES6
Nov 15 Javascript
vue单页应用加百度统计代码(亲测有效)
Jan 31 Javascript
JavaScript创建表格的方法
Apr 13 Javascript
原生js实现拖拽移动与缩放效果
Aug 24 Javascript
Vue3 实现双盒子定位Overlay的示例
Dec 22 Vue.js
jQuery实现点击图片翻页展示效果的方法
Feb 16 #Javascript
JS+CSS实现可拖动的弹出提示框
Feb 16 #Javascript
js实现下拉框选择要显示图片的方法
Feb 16 #Javascript
js实现点击图片将图片地址复制到粘贴板的方法
Feb 16 #Javascript
js实现鼠标经过时图片滚动停止的方法
Feb 16 #Javascript
js鼠标点击图片实现随机变换图片的方法
Feb 16 #Javascript
JavaScript简介
Feb 15 #Javascript
You might like
php方法调用模式与函数调用模式简例
2011/09/20 PHP
$_GET['goods_id']+0 的使用详解
2013/06/06 PHP
一个经典的PHP验证码类分享
2014/11/18 PHP
PHP文件缓存类示例分享
2015/01/30 PHP
mac os快速切换多个PHP版本的方法
2017/03/07 PHP
jQuery 位置函数offset,innerWidth,innerHeight,outerWidth,outerHeight,scrollTop,scrollLeft
2010/03/23 Javascript
理运用命名空间让js不产生冲突避免全局变量的泛滥
2014/06/15 Javascript
js生成的验证码的实现与技术分析
2014/09/17 Javascript
javascript实现依次输入input自动定焦
2014/12/23 Javascript
基于js实现微信发送好友如何分享到朋友圈、微博
2015/11/30 Javascript
12个非常实用的JavaScript小技巧【推荐】
2016/05/18 Javascript
jquery的父、子、兄弟节点查找,节点的子节点循环方法
2016/12/07 Javascript
微信小程序录音与播放录音功能
2017/12/25 Javascript
使用jQuery如何写一个含验证码的登录界面
2019/05/13 jQuery
Vue 401配合Vuex防止多次弹框的案例
2020/11/11 Javascript
[05:49]2014DOTA2TI4正赛第二日综述 昔日冠军纷纷落马 VG LGD占尽先机
2014/07/20 DOTA
python中的闭包用法实例详解
2015/05/05 Python
python 打印出所有的对象/模块的属性(实例代码)
2016/09/11 Python
教你用Python创建微信聊天机器人
2020/03/31 Python
读取json格式为DataFrame(可转为.csv)的实例讲解
2018/06/05 Python
python实现三次样条插值
2018/12/17 Python
利用Python绘制Jazz网络图的例子
2019/11/21 Python
Python SMTP配置参数并发送邮件
2020/06/16 Python
selenium判断元素是否存在的两种方法小结
2020/12/07 Python
Python 实现一个简单的web服务器
2021/01/03 Python
python自动化办公操作PPT的实现
2021/02/05 Python
Django项目在pycharm新建的步骤方法
2021/03/02 Python
使用HTML5原生对话框元素并轻松创建模态框组件
2019/03/06 HTML / CSS
柒牌官方商城:中国男装优秀品牌
2017/06/30 全球购物
美国转售二手商品的电子商务平台:BLINQ
2018/12/13 全球购物
全球异乡人的跨境社交电商平台:Kouhigh口嗨网
2020/07/24 全球购物
幼师辞职信怎么写
2015/02/27 职场文书
2016年母亲节寄语
2015/12/04 职场文书
jQuery实现影院选座订座效果
2021/04/13 jQuery
Lakehouse数据湖并发控制陷阱分析
2022/03/31 Oracle
MySQL 原理与优化之Limit 查询优化
2022/08/14 MySQL