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 相关文章推荐
CutePsWheel javascript libary 控制输入文本框为可使用滚轮控制的js库
Feb 07 Javascript
JS自动适应的图片弹窗实例
Jun 29 Javascript
使用Node.js为其他程序编写扩展的基本方法
Jun 23 Javascript
点击按钮出现60秒倒计时的简单js代码(推荐)
Jun 07 Javascript
jQuery+CSS实现简单切换菜单示例
Jul 27 Javascript
轻松搞定js表单验证
Oct 13 Javascript
JS实现提交表单前的数字及邮箱校检功能
Nov 13 Javascript
vue项目在安卓低版本机显示空白的原因分析(两种)
Sep 04 Javascript
Vue表情输入组件 微信face表情组件
Feb 11 Javascript
JavaScript 格式化数字、金额、千分位、保留几位小数、舍入舍去
Jul 23 Javascript
js实现指定时间倒计时效果
Aug 26 Javascript
Vue+Java+Base64实现条码解析的示例
Sep 23 Javascript
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
生成缩略图
2006/10/09 PHP
PHP CKEditor 上传图片实现代码
2009/11/06 PHP
php中获取主机名、协议及IP地址的方法
2014/11/18 PHP
php多重接口的实现方法
2015/06/20 PHP
PDO操作MySQL的基础教程(推荐)
2017/08/18 PHP
PHP迭代与递归实现无限级分类
2017/08/28 PHP
PHP进阶学习之垃圾回收机制详解
2019/06/18 PHP
jQueryUI的Dialog的简单封装
2010/06/07 Javascript
心扬JS分页函数代码
2010/09/10 Javascript
jQuery中:checked选择器用法实例
2015/01/04 Javascript
把多个JavaScript函数绑定到onload事件处理函数上的方法
2016/09/04 Javascript
解决nodejs中使用http请求返回值为html时乱码的问题
2017/02/18 NodeJs
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
2020/11/24 Javascript
jQuery实现选项卡功能(两种方法)
2017/03/08 Javascript
Angular.JS通过指令操作DOM的方法
2017/05/10 Javascript
Vue2.0 axios前后端登陆拦截器(实例讲解)
2017/10/27 Javascript
axios 处理 302 状态码的解决方法
2018/04/10 Javascript
使用JavaScript生成罗马字符的实例代码
2018/06/08 Javascript
vue.js添加一些触摸事件以及安装fastclick的实例
2018/08/28 Javascript
使用vuex较为优雅的实现一个购物车功能的示例代码
2019/12/09 Javascript
在Python编程过程中用单元测试法调试代码的介绍
2015/04/02 Python
python用pickle模块实现“增删改查”的简易功能
2017/06/07 Python
在python中将字符串转为json对象并取值的方法
2018/12/31 Python
python实现淘宝秒杀脚本
2020/06/23 Python
django 快速启动数据库客户端程序的方法示例
2019/08/16 Python
Python中six模块基础用法
2019/12/08 Python
浅谈tensorflow模型保存为pb的各种姿势
2020/05/25 Python
python实现简单的tcp 文件下载
2020/09/16 Python
canvas绘制圆角头像的实现方法
2019/01/17 HTML / CSS
瑞士国际航空官网:SWISS
2016/07/21 全球购物
天游软件面试
2013/11/23 面试题
音乐系毕业生自荐信
2013/10/27 职场文书
小学教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
乡镇一岗双责责任书
2015/01/29 职场文书
2015年初中教师个人工作总结
2015/07/21 职场文书
2016春季运动会开幕词
2016/03/04 职场文书