基于jquery实现的鼠标拖拽元素复制并写入效果


Posted in Javascript onAugust 23, 2011

直接上代码:

<!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"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>鼠标拖拽复制效果</title> 
<style> 
body{ line-height:150% } 
.show{ display:block} 
.hide{ display:none} 
.clone{position: absolute; border:1px solid #666; background-color:#CCCCCC;} 
.over{ border:1px solid #666;} 
#left{ float:left; width:200px; border:1px solid #666;} 
#left li.selected{ background-color:#CCCCCC} 
#right{ margin-left:220px; border:1px solid #666;} 
</style> 
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
<script> 
$(function(){ 
$("#left li").click(function(e) { 
var index=$(this).index(); 
$("#left li").removeClass("selected"); 
$(this).addClass("selected"); 
$("#right ul").removeClass('show'); 
$("#right ul").addClass('hide'); 
$("#right ul").eq(index).removeClass('hide'); 
$("#right ul").eq(index).addClass('show'); 
}); 
$("#left ul li").mousemove(function(e) { 
if($(this).attr('class')!='selected'&&$(".clone").length>0) 
{ 
$(this).addClass('over'); 
} 
}); 
$("#left ul li").mouseout(function(e) { 
if($(this).attr('class')!='selected') 
{ 
$(this).removeClass('over'); 
} 
}); 
$("#left ul li").mouseup(function(e) { 
if($(this).attr('class')!='selected'&&$(".clone").length>0) 
{ 
var index=$(this).index(); 
//$("#right ul").eq(index).prepend($(".clone")); 
$(".clone").appendTo($("#right ul").eq(index)); 
$(".clone").attr('class',''); 
} 
}); 
$("#right ul li").mousedown(function(e) {//鼠标按下,鼠标变移动标志,克隆元素,并确定新克隆元素位置 
$(this).clone().addClass("clone").appendTo($("body")); 
$("body").css('cursor','move'); 
$(".clone").css('left',e.clientX+1); 
$(".clone").css('top',e.clientY+1); 
}); 
$(document).mousemove(function(e){ 
if($(".clone").length>0) 
{ 
$(".clone").css('left',e.clientX+1); 
$(".clone").css('top',e.clientY+1); 
} 
}); 
$(document).mouseup(function(e){ 
$(".clone").remove(); 
$("body").css('cursor','auto'); 
}); 
}); 
</script> 
</head> 
<body> 
<div id="left"> 
<ul> 
<li class="selected">组一</li> 
<li>组2</li> 
<li>组3</li> 
</ul> 
</div> 
<div id="right"> 
<ul class="show"> 
<li>1姓名一</li> 
<li>1姓名2</li> 
<li>1姓名3</li> 
<li>1姓名4</li> 
<li>1姓名5</li> 
<li>1姓名6</li> 
</ul> 
<ul class="hide"> 
<li>2姓名一</li> 
<li>2姓名2</li> 
<li>2姓名3</li> 
<li>2姓名4</li> 
<li>2姓名5</li> 
<li>2姓名6</li> 
</ul> 
<ul class="hide"> 
<li>3姓名一</li> 
<li>3姓名2</li> 
<li>3姓名3</li> 
<li>3姓名4</li> 
<li>3姓名5</li> 
<li>3姓名6</li> 
</ul> 
</div> 
</body> 
</html>
Javascript 相关文章推荐
JAVASCRIPT IE 与 FF中兼容问题小结
Feb 18 Javascript
js获取视频时长代码
Apr 10 Javascript
jquery 自定义容器下雨效果可将下雨图标改为其他
Apr 23 Javascript
基于javascript实现动态显示当前系统时间
Jan 28 Javascript
关于JS中的apply,call,bind的深入解析
Apr 05 Javascript
jQuery Mobile页面返回不需要重新get
Apr 26 Javascript
jQuery实现可兼容IE6的遮罩功能详解
Sep 19 jQuery
webstorm中配置Eslint的两种方式及差异比较详解
Oct 19 Javascript
微信小程序实现渐入渐出动画效果
Jun 13 Javascript
vue使用map代替Aarry数组循环遍历的方法
Apr 30 Javascript
vue 单页应用和多页应用的优劣
Oct 22 Javascript
利用js实现简单开关灯代码
Nov 23 Javascript
一些有用的JavaScript和jQuery的片段分享
Aug 23 #Javascript
Fastest way to build an HTML string(拼装html字符串的最快方法)
Aug 20 #Javascript
jQuery最佳实践完整篇
Aug 20 #Javascript
jQuery的deferred对象使用详解
Aug 20 #Javascript
优化innerHTML操作(提高代码执行效率)
Aug 20 #Javascript
js中将URL中的参数提取出来作为对象的实现代码
Aug 16 #Javascript
兼容IE和Firefox的javascript获取iframe文档内容的函数
Aug 15 #Javascript
You might like
一个PHP数组应该有多大的分析
2009/07/30 PHP
php下把数组保存为文件格式的实例应用
2010/02/08 PHP
php配合jquery实现增删操作具体实例
2013/12/12 PHP
dedecms集成财付通支付接口
2014/12/28 PHP
PHP 等比例缩放图片详解及实例代码
2016/09/18 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
2016/12/12 PHP
PHP正则替换函数preg_replace()报错:Notice Use of undefined constant的解决方法分析
2017/02/04 PHP
js监听滚动条滚动事件使得某个标签内容始终位于同一位置
2014/01/24 Javascript
JS按回车键实现登录的方法
2014/08/25 Javascript
理解javascript中的回调函数(callback)
2014/09/02 Javascript
js限制文本框只能输入中文的方法
2015/08/11 Javascript
基于JS实现简单的样式切换效果代码
2015/09/04 Javascript
JavaScript ES6中CLASS的使用详解
2016/11/22 Javascript
浅谈Node.js:fs文件系统模块
2016/12/08 Javascript
解决微信内置浏览器返回上一页强制刷新问题方法
2017/02/05 Javascript
使用canvas进行图像编辑的实例
2017/08/29 Javascript
Angular 作用域scope的具体使用
2017/12/11 Javascript
JS中实现隐藏部分姓名或者电话号码的代码
2018/07/17 Javascript
解决jQuery使用append添加的元素事件无效的问题
2018/08/30 jQuery
vue以组件或者插件的形式实现throttle或者debounce
2019/05/22 Javascript
Angular8引入百度Echarts进行图表分析的实现代码
2019/11/27 Javascript
微信小程序将页面按钮悬浮固定在底部的实现代码
2020/10/29 Javascript
React中使用Vditor自定义图片详解
2020/12/25 Javascript
python判断windows系统是32位还是64位的方法
2015/05/11 Python
python单元测试unittest实例详解
2015/05/11 Python
python3实现TCP协议的简单服务器和客户端案例(分享)
2017/06/14 Python
python编程羊车门问题代码示例
2017/10/25 Python
python读取文本中的坐标方法
2018/10/14 Python
pandas基于时间序列的固定时间间隔求均值的方法
2019/07/04 Python
python 画条形图(柱状图)实例
2020/04/24 Python
在家更换处方镜片:Lensabl
2019/05/01 全球购物
考博自荐信
2013/10/25 职场文书
就业协议书怎么填
2014/04/11 职场文书
相亲活动方案
2014/08/26 职场文书
2019银行员工个人工作自我鉴定
2019/06/27 职场文书
JavaScript parseInt0.0000005打印5原理解析
2022/07/23 Javascript