工具方法: jQuery.方法() $.extend (小计)
$.extend(布尔值,目标对象,合并对象,……)
布尔值 : true,深拷贝(递归拷贝) false,浅拷贝(非递归拷贝)
对象方法:(给jQuery的prototype添加方法)
$.fn.extend()
例子:
// 将字符串左边的空格去除
// 将字符串右边的空格去除
// 拓展到jQuery中 $.extend({
wipeLeftBlank : function(str){
let arr = str.split('');
for(var i = 0;arr[i] === ' ';){
arr.shift();
}
return arr.join("");
//return str.replace(/^\s+/g,'');
},
wipeRightBlank : function(str){
let arr = str.split('');
for(var j = arr.length - 1;arr[j] === ' ';){
arr.pop();
j = arr.length - 1;
}
return arr.join("");
//return str.replace(/\s+$/g,'');
}
})
$.fn.extend({
wipeLeftBlank : function(str){
let arr = str.split('');
for(var i = 0;arr[i] === ' ';){
arr.shift();
}
return arr.join("");
//return str.replace(/^\s+/g,'');
},
wipeRightBlank : function(str){
let arr = str.split('');
for(var j = arr.length - 1;arr[j] === ' ';){
arr.pop();
j = arr.length - 1;
}
return arr.join("");
//return str.replace(/\s+$/g,'');
},
drag : function(){
var that = this;
this.mousedown(function(evt){
// alert(this); //$('#box');
var disX = evt.pageX - $(this).offset().left;
var disY = evt.pageY - $(this).offset().top;
$(document).mousemove(function(evt){
//alert(this); //原生节点对象
that.css({left : evt.pageX - disX,top : evt.pageY - disY});
})
$(document).mouseup(function(evt){
that.off();
})
return false;
})
}
}) console.log('(' + $().wipeLeftBlank(' a b ') + ')');
console.log('(' + $().wipeRightBlank(' a b ') + ')');
$("#box").drag();
工具方法: jQuery.方法() $.extend (小计)的更多相关文章
- jQuery为开发插件提拱了两个方法:jQuery.fn.extend(); jQuery.extend();
jQuery为开发插件提拱了两个方法,分别是: jQuery.fn.extend(); jQuery.extend(); jQuery.fn jQuery.fn = jQuery.prototype ...
- jQuery笔记之工具方法extend插件扩展
jQuery工具方法 $.extend()插件扩展(工具方法) $.fn.extend()插件扩展(实例方法) 浅度克隆.深度克隆 两个方法基本是一样的,唯一不同的就是调用方式不一样 -------- ...
- jQuery 第九章 工具方法之插件扩展 $.extend() 和 $.fn.extend()
$.extend() $.fn.extend() -------------------------------------------------- $.extend() 插件扩展(工具方法) jq ...
- JQuery $ $.extend(),$.fn和$.fn.extend javaScript对象、DOM对象和jQuery对象及转换 工具方法(utility)
一.为什么jquery前面要写$ Javascript没有package的概念,而作者又希望所有jQuery相关的API都能通过一个全局性的对象来容纳. 名为jQuery的全局变量就是这样一个对象,不 ...
- JQuery extend()与工具方法、实例方法
使用jQuery的时候会发现,jQuery中有的函数是这样使用的: $.get(); $.post(); $.getJSON(); 有些函数是这样使用的: $('div').css(); $('ul' ...
- jQuery的extend方法
jq中的extend在面试中经常会被问道,今天我总结一个下有关于extend的用法三种进行对比,可能不全,希望大家指点, 用法一: $.extend({}) ,为jQuery类添加方法,可以理解为扩 ...
- jQuery提供的小方法
jQuery提供的小方法: 1.选择器 + 事件 + 函数 = 复杂的交互 2.循环处理与选择器匹配的各个元素:each() $("#").each(function(){ ...
- jQuery.extend()方法和jQuery.fn.extend()方法
jQuery.extend()方法和jQuery.fn.extend()方法源码分析 这两个方法用的是相同的代码,一个用于给jQuery对象或者普通对象合并属性和方法一个是针对jQuery对象的实例, ...
- JQuery的extend扩展方法
jQuery.extend 函数使用详解 JQuery的extend扩展方法: Jquery的扩展方法extend是我们在写插件的过程中常用的方法,该方法有一些重载原型,在此,我们一起去 ...
随机推荐
- github使用的小坑 处理
1.本地版本 低于线上版本,并做了修改 ,线上版本也做了修改的情况下,提交内容,必须解决冲突 会出现 解决方法 冲突的几个文件 进行初始还原 在进行 更新 与线上同步,在将需要提交的/新增/修改的内容 ...
- Kafka集群搭建 (2.11-0.9.0.1)
之前写过kafka_2.9.2-0.8.2.2版本的安装,kafka在新的0.9版本以上改动比较大,配置和api都有很大更新,并且broker对应的partition支持多线程生产和消费,所以性能比之 ...
- mybatis循环、mybatis传map
mybatis中使用循环.mybatis传入map案例 <!-- 根据id修改商户提成配置--> <update id="editStopAll" paramet ...
- Android 常见问题解决
1.Android 启动Activity后阻止EditText自动获取焦点 在EditText中添加如下属性即可 <LinearLayout android:focusable="tr ...
- C++ log4cplus 类库的封装
对 log4cplus 库的封装,修改自网路 LogUtils.h /* * LogUtils.h * * Created on: 2018年8月9日 * Author: oftenlin */ #i ...
- ISP PIPLINE (四) Demosaic
what is the Demosaic? CMOS/CCD在成像时,CFA(color filter array),CFA过滤不同频段的光,因此,Sensor的输出的RAW数据信号包含了3个通道的信 ...
- python 函数split()
函数:split() Python中有split()和os.path.split()两个函数,具体作用如下:split():拆分字符串.通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(lis ...
- [LeetCode] Linked List Components 链表组件
We are given head, the head node of a linked list containing unique integer values. We are also give ...
- P2678 跳石头---(二分答案)
题目背景 一年一度的“跳石头”比赛又要开始了! 题目描述 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石.组委会已经选择好了两块岩石作为比赛起点和终点.在起点和终点之间,有 NNN 块岩石 ...
- Windows中使用ssh利用公钥登入远程服务器
方式:使用 Winscp 密钥登录 我们平时开发多会使用 ftp 来上传下载文件,尤其是很多 Linux 环境下. 其实 Linux 默认是不提供 ftp 的,需要你额外安装 FTP 服务 ...