基于jquery實(shí)現(xiàn)的鼠標(biāo)拖拽元素復(fù)制并寫入效果
更新時(shí)間:2011年08月23日 19:46:11 作者:
基于jquery實(shí)現(xiàn)的鼠標(biāo)拖拽元素復(fù)制并寫入效果的實(shí)現(xiàn)代碼,需要的朋友可以參考下。
直接上代碼:
<!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>鼠標(biāo)拖拽復(fù)制效果</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) {//鼠標(biāo)按下,鼠標(biāo)變移動(dòng)標(biāo)志,克隆元素,并確定新克隆元素位置
$(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>
復(fù)制代碼 代碼如下:
<!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>鼠標(biāo)拖拽復(fù)制效果</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) {//鼠標(biāo)按下,鼠標(biāo)變移動(dòng)標(biāo)志,克隆元素,并確定新克隆元素位置
$(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>
您可能感興趣的文章:
- Jquery UI實(shí)現(xiàn)一次拖拽多個(gè)選中的元素操作
- jquery插件jquery.dragscale.js實(shí)現(xiàn)拖拽改變?cè)卮笮〉姆椒?附demo源碼下載)
- jquery網(wǎng)頁(yè)元素拖拽插件效果及實(shí)現(xiàn)
- jQuery 版元素拖拽原型代碼
- JQuery拖拽元素改變大小尺寸實(shí)現(xiàn)代碼
- jQuery如何獲取動(dòng)態(tài)添加的元素
- jQuery動(dòng)態(tài)添加、刪除元素的方法
- Jquery顯示、隱藏元素以及添加刪除樣式
- Jquery動(dòng)態(tài)添加及刪除頁(yè)面節(jié)點(diǎn)元素示例代碼
- jquery實(shí)現(xiàn)拖拽添加元素功能
相關(guān)文章
jQuery使用$.ajax進(jìn)行即時(shí)驗(yàn)證的方法
這篇文章主要介紹了jQuery使用$.ajax進(jìn)行即時(shí)驗(yàn)證的方法,較為詳細(xì)的分析了jQuery基于ajax實(shí)現(xiàn)前臺(tái)驗(yàn)證與后臺(tái)數(shù)據(jù)交互的相關(guān)技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-12-12使用jquery為table動(dòng)態(tài)添加行的實(shí)現(xiàn)代碼
最近,有需要做一個(gè)動(dòng)態(tài)的給table,添加行,用了點(diǎn)時(shí)間,算是做成了。已測(cè)試過,但如果發(fā)現(xiàn)有什么bug,可以留言,歡迎拍磚。大家一起進(jìn)步。2011-03-03