重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

jquery可拖动,jquery左右滑动

jQuery如何实现多个div窗口任意拖动

jquery实现拖拽很简单的:

创新互联是专业的桂东网站建设公司,桂东接单;提供成都网站建设、网站设计,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行桂东网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

$(element).myDrag({    

parent:'parent', //定义拖动不能超出的外框,拖动范围    

randomPosition:true, //初始化随机位置    

direction:'all', //方向    

handler:false, //把手    

dragStart:function(x,y){}, //拖动开始 x,y为当前坐标    

dragEnd:function(x,y){}, //拖动停止 x,y为当前坐标    

dragMove:function(x,y){} //拖动进行中 x,y为当前坐标    

});

具体的可以看这里:jquery.drag.js—实现拖拽效果的插件

有完整的在线实例演示的!!!

在jquery中怎么实现图片拖动效果,比如像一张地图你拖一下它动一下的效果

script src=""/script //引用jquery

script src=""/script //引用jquery ui

script

$(function () {

$("#draggable").draggable(); //draggable为ui中的拖动方法

});

/script

img id="draggable" src="a1.jpg" width:100px; height:100px; /

这样行不??

如何使用jQuery Draggable和Droppable实现拖拽功能

主要功能需求说明:

1.左侧的元素结构最后会通过Ajax call服务器的数据来生成,能支持多级元素。父节点可以折叠起来

2.用户可以通过拖放的操作,将元素从左侧拖放到右侧。如果是拖的父节点元素,那么需要把它子节点的元素一并拖到右边

3.元素放到右侧,右侧可以接受元素的区域有2种可能。一种新建一个区域,就类似“华东交通大学”所示。另外一种就是拖放到已经有元素的区域。两者的关系是“或”。单个元素区域有“非”和“且”的关系。点击右边删除按钮可以删除节点元素。

第一步:左侧元素可以拖

官方给出的实例是直接在要拖动的元素上添加class="ui-widget-

content"。最初我是在所有要拖动的元素都添加了“ui-widget-content”类别。但是测试拖动结果,发现元素只能在它所在的

container里面拖动,再往右拖动,div会出现水平或垂直滚动条。不知道是不是自己在参数设置上不对。container设置了

overflow:auto。

效果如下图所示:

为最终的左侧元素节点是通过Ajax访问后台返回json数据,然后通过Javascript动态生成这种结构,而已不能为动态生成的元素绑定drag事

件,也就不能调用draggable方法,所以我使用了一个称之“中间拖拽容易元素”,这div一直在页面上。只是默认不显示,只要用户开始拖拽左侧的元

素时,它就出现了。当然这里需要自己手动添加很多代码。

复制代码 代码如下:

div id='draggableDiv' class="ui-widget-content"

中间拖拽容器元素

/div

script type="text/javascript"

$("#draggableDiv").draggable({

containment: "parent",

drag: function (event, ui) { console.log("拖拽中"); },

stop: function () { console.log("拖拽结束"); }

});

/script

第二步:将

要拖的元素内容复制到draggableDiv上。实现拖动父节点时,其下面的子节点元素也要拖放到右边。如果是拖动的子节点元素,就在右边直接显示子节

点元素。父节点和子节点是相对的,因为左侧树形结构的节点可以是无限级的,所以一个元素既可能是子节点元素,也会是父节点元素。通过监听鼠标的

mousedown和mouseup事件,来判断用户在拖动元素。这步的原理如下图所示:

用户拖动B节点时,首先把B元素上的内容复制给draggableDiv元素,当用户拖动B元素,其实是拖动draggableDiv元素。所以我们要计

算出我们点击的B元素的位置,然后让draggableDiv在拖动时候显示正确的位置,然后拖动就是draggableDiv元素,用户看起来是拖动的

B节点元素。

复制代码 代码如下:

var clickElement = null; $(".threepanels .ptreelist").bind("mousedown",function (event) {

//获取当前mousedown元素的内容

var itemContent = $(this).html(); var draggableDiv = $("#draggableDiv");

$(draggableDiv).css({ "display": "block", "height": 0 });

//将点击的元素内容复制

clickElement = $(this).clone();

var

currentdiv = $(this).offset(); $(draggableDiv).css({ "top":

currentdiv.top, "left": currentdiv.left }); draggableDiv.trigger(event);

//取消默认行为 return false; });

$("#draggableDiv").mouseup(function (event) { $(this).css({ "height": "0" }); });

//拖动元素时鼠标的位置

var dragDivLeft = 0;

var dragDivTop = 0;

$("#draggableDiv").draggable({

containment: "parent", drag: function (event, ui) {

$("#draggableDiv").css({ "width": "260px", "height": "22px" });

$("#draggableDiv").append(clickElement);

var closeTop = $(".closeBar").offset().top;

dragDivLeft = event.target.offsetLeft;

dragDivTop = event.target.offsetTop; },

stop: function () {

//拖拽结束,将拖拽容器内容清空

$("#draggableDiv").html("");

$("#draggableDiv").css({"height":"0"}); }

});

第三步:右边的元素可以放到指定的位置上

需要将元素拖到指定的区域里面,然后释放操作。完成“放”的操作。可以从上图看出,我是将元素的上边左边和下边缘的左边存到一个数组里面。然后在“拖”的过程中,一直记录了拖动的左边,放到右侧时,就可以判断当前元素将要放的位置。具体可以下载代码查看。

jquery或JS拖动DIV左右移动

html

head

titlejquery或JS拖动DIV左右移动/title

script src="jquery-1.7.1.min.js"/script

style type="text/css"

body {background-color: #fff; }

.win {position: absolute; top: 0px; left: 0px;width: 300px;height: 222px;}

.title {height: 20px;width: 300px;  position: absolute;background-color: #0094ff; float: inherit; top: 0px; left: 0px; }

.winCon { height: 200px;width: 298px; position: absolute; border: solid; 

border-width: 1px; border-color: #0094ff; border-top: none;  float: inherit; left: 0px; top: 20px; }

/style

/head

body onload="showDiv(this,'test1');"

/body

script type="text/javascript"

function showDiv(element, str) {

$(document.body).append("div class='win' id='win" + str + "'div class='title' id='" + str + "'/divdiv class='winCon' 清新自在/div/div");

$("#" + str).mousedown(function (event) {

var offset = $(this).offset();

_x = event.clientX - offset.left;

_y = event.clientY + 20 - offset.top;

$("#win" + str).css({ "top": offset.top - 20 + "px" });

$("#win" + str).mousemove(function (event) {

_xx = event.clientX - _x;

_yy = event.clientY - _y;

this.style.left = _xx + "px";

this.style.top = _yy + "px";

this.style.zIndex = "100";

return false;

});

return false;

});

$("#win" + str).mouseup(function () {

$(this).unbind("mousemove");

$(this).css({ "z-index": "-1" });

return false;

});

}

/script

/html

jquery 拖动问题

停止拖动:return false,鼠标松开再按下可以继续拖动。

if(obt = 0) {

$(".one").css({"top":"0px"});

return false;

};

禁止拖动:disabled: true,但你需要另外一个button来设置 disabled: false 后才能继续拖动。

if(obt = 0) {

$(".one").css({"top":"0px"});

$(this).draggable({ disabled: true });

return false;

};

-------------------------------

建议你使用 containment,将拖动范围局限于一个指定的元素内。

drag: function(e) {

// drag 代码

},

containment: "div.main"

这样你就不需要自定义 top right bottom left,.one 只在 div.main 中可以拖动。

用jquery 怎么实现表格列与列之间的拖拽?

如果要直接实现这种效果的话,

一个程序比较复杂,

第二个可能效果不会很理想,会出现很有拖拽或者运动中的bug!

你可以参考一下jquery ui里面的拖拽。

利用jquery ui里面的,即方便,有能有效的去除各种意料意外的情况

给你一个地址,你可以看一下参考一下


当前名称:jquery可拖动,jquery左右滑动
文章位置:http://cqcxhl.com/article/dsipoog.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP