jquery自定义类的封装
如何用jquery自定义一个类?(demo参考)
/*简单使用*/
(function($){
//el操纵对象,option属性值
$.love = function(el,option){
var lo = $(el);
var lo.vars = $.extend({},$.love.default ,option); //合并成新对象,则是新的属性列表
//定义其他属性
......
var method = {};
//私有方法,私有方法之间可互相调用
method={
functionA: function() {...},
functionB: function() {...},
functionC: function() {...},
...
}
//公有方法(特权方法),供类外调用
this.publicFunction = function(a,b,c){
....
/*调用私有函数*/
method.functionA();
...
}
...
}
//可设置默认属性
$.love.default = {
option1:...,
option2:...,
....
}
})(jQuery);
/*类外调用*/
var a = new $.love("#id",{title:"name",age:12,...});
a.publicFunction(a,b,c);
/*相对高级点*/
(function($){
//el操纵对象,option属性值
$.love = function(el,option){
var lo = $(el);
var lo.vars = $.extend({},$.love.default ,option); //合并成新对象,则是新的属性列表
//定义其他属性
......
var method = {};
$.data(el, "love", lo); //在元素上存放数据,包括lo的所有属性,方法
//私有方法,私有方法之间可互相调用
method={
functionA: function() {...},
functionB: function() {...},
functionC: function() {...},
...
}
//公有方法(特权方法),供类外调用
lo.pfunctionA = function(){
/*调用私有函数*/
method.functionA();
},
lo.pfunctionB = function(){...},
...
}
//可设置默认属性
$.love.default = {
option1:...,
option2:...,
....
}
$.fn.love(option){
var $this = $(this);
if( $this.data('love')===undefined){
new $.love(this,option);
}else{
var love = $this.data('love'); //直接使用类中的函数等
love.pfunctionA();
}
}
})(jQuery);
$ ==> "$ "就是 jQuery 对象的引用,等于"jQuery "
(function(){}) ==>模仿块级作用域
$.xxx ==>针对 jQuery 对象添加方法(我的理解)
$.fn.xxx ==》针对元素添加方法(我的理解)
jquery自定义类的封装的更多相关文章
- jquery 自定义类
jQuery自定义类封装: (function ($) { $.DragField = function (arg) { var name = "你好"; //这个是私有变量,外部 ...
- Java中使用自定义类封装数组,添加类方法实现数据操作
1.具体见注释 2.后续或有更新 public class MyArray { private long[] array; private int cnt; // 自定义数组类的元素个数 /** 使用 ...
- 把jQuery的类、插件封装成seajs的模块的方法
这篇文章主要介绍了把jQuery的类.插件封装成seajs的模块的方法,需要的朋友可以参考下 注:本文使用的seajs版本是2.1.1 一.把Jquery封装成seajs的模块 define(func ...
- 深入学习jQuery自定义插件
原文地址:jQuery自定义插件学习 1.定义插件的方法 对象级别的插件扩展,即为jQuery类的实例增加方法, 调用:$(选择器).函数名(参数); $(‘#id’).myPlugin(o ...
- Jquery自定义插件之$.extend()、$.fn和$.fn.extend()
jquery插件的种类: 1.对象级别的插件开发,即给jQuery对象添加方法,封装对象方法的插件,如:parent().appendTo() 2.一种是类级别的插件开发,即给jQuery添加新的全局 ...
- 你的专属定制——JQuery自定义插件
前 言 絮叨絮叨 jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架).jQuery设计的宗 ...
- jQuery自定义插件--banner图滚动
前言 jQuery是一个功能强大的库,提供了开发JavaScript项目所需的所有核心函数.很多时候我们使用jQuery的原因就是因为其使用插件的功能,然而,有时候我们还是需要使用自定义代码来扩展这些 ...
- JQuery自定义插件详解之Banner图滚动插件
前 言 JRedu JQuery是什么相信已经不需要详细介绍了.作为时下最火的JS库之一,JQuery将其"Write Less,Do More!"的口号发挥的极致.而帮助J ...
- jquery自定义插件——以 选项卡插件为例
一直打算尝试自定义插件,终于付诸实践了,现在把内容发表出来,与大家共勉. 我是根据自己正在用的插件,模仿其源码,实现的自定义插件,完成之后,在网上看相关资料,对自定义插件部分,有了更明确的认识. jq ...
随机推荐
- nginx的使用教程
一.基本概念 1.1 正向代理和反向代理 (参考文档:https://www.cnblogs.com/hafiz/p/7233306.html) 假设我们给定客户端A.代理服务器B.以及最终服务器C ...
- maven阿里云镜像及本地仓库
一.添加阿里云镜像 1 找到maven的安装目录,conf文件夹下的setting.xml文件 2 打开setting.xml文件,找到mirrors节点添加阿里镜像库地址: <mirror&g ...
- web自动化测试与Appuim自动化测试对比
web自动化测试-打开浏览器: from selenium import webdriver driver = webdriver.Chrome() #定义chrome驱动 driver.maximi ...
- Ajax_请求get,post案例
1. 最原始的ajax请求方式 (1). get请求 <%@ Page Language="C#" AutoEventWireup="true" Code ...
- SqlServer中exists和in的区别
1.in 2.exists
- 《剑指offer》第五十八题(翻转单词顺序)
// 面试题58(一):翻转单词顺序 // 题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变. // 为简单起见,标点符号和普通字母一样处理.例如输入字符串"I am a ...
- Golang的session管理器
对于一些需要对用户进行管理(比如验证操作的权限等)的站点来说,session管理器是必不可少的.下面实现了一个线程安全的简单session管理类.生产环境:golang1.4.2+win7x64gol ...
- Go语言学习之6 反射详解
1.反射: 定义: 反射就是程序能够在运行时检查变量和值,求出它们的类型. 可以在运行时动态获取变量的相关信息 Import ( ...
- caffe在win10下的安装与配置
1.Windows环境caffe安装配置(无GPU) 参考:http://www.cnblogs.com/cxyxbk/p/5902034.html 解压caffe-windows文件,将./wind ...
- OSPF - 3,OSPF区域和LSA
1,四种末端区域骨干区域和标准区域:1,2,3,4,5,包含5类LSA,为了减少某些普通区域的LSA(主要就是4类和5类,有时做绝到连3类也不要了),引入了末梢区域.同时为了确保数据能出去,一般ABR ...