27、 jq 拖拽
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#box{
width: 100px;
height: 100px;
background: darkgoldenrod;
position: absolute;
}
</style>
</head>
<body>
<div id="box">
</div>
<script type="text/javascript" src="js/jquery-1.11.3.js" ></script>
<script type="text/javascript">
//工具方法
//$.extend({})
$.extend({
aaa : function(){
return 'aaa';
},
bbb : function(){
return 'bbb';
},
ccc : function(){
return 'ccc';
},
//1. 去除字符串中左边的空格(封装成 工具方法)
trimLeft : function(str){
return str.replace(/^\s+/g,'');
},
//2. 去除字符串中右边的空格(封装成 工具方法)
trimRight : function(str){
return str.replace(/\s+$/g,'');
}
});
// alert($.aaa());
// alert($.bbb());
// alert($.ccc());
//对象方法
//$.fn.extend({})
$.fn.extend({
aaa : function(){
return 'aaa';
},
bbb : function(){
return 'bbb';
},
ccc : function(){
return 'ccc';
},
//1. 去除字符串中左边的空格(封装成 对象方法)
trimLeft : function(str){
return str.replace(/^\s+/g,'');
},
//2. 去除字符串中右边的空格(封装成 对象方法)
trimRight : function(str){
return str.replace(/\s+$/g,'');
},
//3. 封装拖拽的方法(封装成 对象方法)
drag : function(){
var disX = null;
var disY = null;
var that = this; //jQ对象
this.mousedown(function(evt){
// alert(this); //原生this对象:代表当前所触发事件的对象
disX = evt.pageX - $(this).offset().left;
disY = evt.pageY - $(this).offset().top;
//文档添加移动事件
$(document).mousemove(function(evt){
that.css({left : evt.pageX - disX,top : evt.pageY - disY});
})
//鼠标抬起事件
$(document).mouseup(function(){
$(this).off();
})
})
}
})
// alert($().aaa());
// alert($().bbb());
// alert($().ccc());
//1. 去除字符串中左边的空格(封装成 工具方法和对象方法)
// alert('(' + $.trimLeft(' a b ') + ')');
// alert('(' + $().trimLeft(' a b ') + ')');
// alert('(' + $.trimRight(' a b ') + ')');
// alert('(' + $().trimRight(' a b ') + ')');
//2. 去除字符串中右边的空格(封装成 工具方法和对象方法)
//3. 封装拖拽的方法(封装成 对象方法)
//事件中的this : 表示原生对象(当前对象)
//jQuery对象调用的方法中,this : 表示jQuery对象
$('#box').drag();
</script>
</body>
</html>
27、 jq 拖拽的更多相关文章
- jq 拖拽
1.尼玛, move事件的时候忘了加ev,找了一个多小时 <!DOCTYPE html> <html> <head lang="en"> < ...
- jq拖拽插件
(function ($) { var move = false; //标记控件是否处于被拖动状态 var dragOffsetX = 0; //控件左边界和鼠标X轴的差 var dragOffset ...
- Jquery拖拽,拖动排序插件
上github搜jquery-sortable <!-- jq拖拽排序 --> <script src="${contextPath}/static/excelTable/ ...
- jQ插件--时间线插件和拖拽API
这个时间轴是工作上用到的,自己写了一个, qq空间有时间轴的控件, 百度文库也有时间轴的控件: 百度的时间轴大概是这样的: 用户点击对应的锚链接, 那个三角会滚动, 然后左侧的界面也会滚动: 实际的 ...
- JQ实现3D拖拽效果
<!DOCTYPE HTML> <html onselectstart='return false'> <head> <meta http-equiv=&qu ...
- 基于 jq 实现拖拽上传 APK 文件,js解析 APK 信息
技术栈 jquery 文件上传:jquery.fileupload,github 文档 apk 文件解析:app-info-parser,github 文档 参考:前端解析ipa.apk安装包信息 - ...
- jq实现拖拽
$("body").delegate( ".msg-layer",{ mousedown: function (e) { var el = $(".m ...
- Jquery 多行拖拽图片排序 jq优化
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 不断优化,重构我的代码-----拖拽jquery插件
最近学东西学的有点太散了,歇一阵子,重新完善之前的JQ插件,今天先上拖拽吧 // JavaScript Document (function($){ var defaults = { actionEl ...
随机推荐
- 如何卸载EXCEL中的插件?
1.问题:每一次启动,excel都会弹出一个提示框,是因为将treeplan给删除了.找不到. 2.解决办法: 1)在加载项界面,点击转到.就进入自己加载的工具界面 2)将相应项前面的勾取消--但某插 ...
- dagger2 重点笔记
官方架构例子,里面有个dagger2的结合的例子 https://github.com/googlesamples/android-architecture https://google.github ...
- IntelliJIdea 2016.2 使用 tomcat 8.5 调试spring的web项目时,bean被实例化两次导致timer和thread被启动了两遍的问题的解决
今天新搭建了一个spring的web项目,项目启动时会启动一个线程,线程里定时执行任务,另外还启动了一个定时器,每秒钟统计系统吞吐量等业务性能数据.但是调试的时候惊奇的发现定时器和线程均被启动了两次. ...
- python3 --- locale命名空间让程序更加安全了
[简介] 由于python-2.x 并没有locale这个层次的命名空间,所以临时变量有可能会泄漏,进而影响到了包涵它的命名空间 [看一下pyhont-2.x是怎么泄漏临时变量的] python Py ...
- OC 与 js 界面JSBridge交互
// 1.新建WebView self.webView = [[UIWebView alloc] initWithFrame:self.view.bounds]; [self.view addSubv ...
- 关于java中死锁的总结
关于死锁,估计很多程序员都碰到过,并且有时候这种情况出现之后的问题也不是非常好排查,下面整理的就是自己对死锁的认识,以及通过一个简单的例子来来接死锁的发生,自己是做python开发的,但是对于死锁的理 ...
- BizTalk Schedule Adapter的使用
由于BizTalk作为一个消息中间件是无状态的,一般不能主动去触发消息.因此在有一些特定的场景,比如每隔X分钟/小时/天去轮询或获取数据时就会特别不方便.不过可以通过Codeplex上的开源项目:Bi ...
- Roslyn如何实现简单的代码提示
假如需要实现一个代码编辑器,其中一个很重要的功能是实现代码提示,类似VS的代码智能提示.下面用Roslyn编译器来实现一个简单的代码提示功能. 代码提示,首先必须需要知道对象的类型信息,然后通过迭代获 ...
- Docker指令
将showdoc容器下的/var/www 拷贝到主机 /home/bonker/showdocTsp1.214下 docker cp showdoc:/var/www /home/bonker/sho ...
- 快速入门 WePY 小程序【转】
一.WePY介绍 WePY 是 腾讯 参考了Vue 等框架对原生小程序进行再次封装的框架,更贴近于 MVVM 架构模式, 并支持ES6/7的一些新特性. 二.WePY 使用 1.WePY的安装或更新都 ...