jQuery起点教程之插件制作

  jquery插件给我的感觉清一色的清洁,简单。如Jtip,要使用它的功能,只需要在你的元素的class上加上Jtip,并引入jtip.js及其样式即可以了。其他事情插件全包。我喜欢jquery的一个重要原因是发现她已经有了很多很好,很精彩的插件。写一个自己的jQuery插件是非常容易的,如果你按照下面的原则来做,可以让其他人也容易地结合使用你的插件.

  为你的插件取一个名字,在这个例子里面我们叫它"foobar".

  创建一个像这样的文件:jquery.[yourpluginname].js,比如我们创建一个jquery.foobar.js

  创建一个或更多的插件方法,使用继承jQuery对象的方式,如:

  jQuery.fn.foobar = function() {

  // do somethinghttp://www.82676666.com

  };

  可选的:创建一个用于帮助说明的函数,如:

  jQuery.fooBar = {

  height: 5,

  calculateBar = function() { ... },

  checkDependencies = function() { ... }

  };

  你现在可以在你的插件中使用这些帮助函数了:

  jQuery.fn.foobar = function() {

  // do something

  jQuery.foobar.checkDependencies(value);

  // do something else

  };

  可选的l:创建一个默认的初始参数配置,这些配置也可以由用户自行设定,如:

  jQuery.fn.foobar = function(options) {

  var settings = {

  value: 5,

  name: "pete",

  bar: 655

  };

  if(options) {

  jQuery.extend(settings, options);

  }

  };

  现在可以无需做任何配置地使用插件了,默认的参数在此时生效:

  $("...").foobar();

  或者加入这些参数定义:

  $("...").foobar({

  value: 123,

  bar: 9

  });

  如果你release你的插件, 你还应该提供一些例子和文档,大部分的插件都具备这些良好的参考文档.现在你应该有了写一个插件的基础,让我们试着用这些知识写一个自己的插件.很多人试着控制所有的radio或者checkbox是否被选中,比如:

  $("input[@type=‘checkbox‘]").each(function() {

  this.checked = true;

  // or, to uncheck

  this.checked = false;

  // or, to togglehttp://www.hrbfc120.com

  this.checked = !this.checked;

  });

  无论何时候,当你的代码出现each时,你应该重写上面的代码来构造一个插件,很直接地:

  $.fn.check = function() {

  return this.each(function() {

  this.checked = true;

  });

  };

  这个插件现在可以这样用:

  $("input[@type=‘checkbox‘]").check();

  现在你应该还可以写出uncheck()和toggleCheck()了.但是先停一下,让我们的插件接收一些参数.

  $.fn.check = function(mode) {

  var mode = mode || ‘on‘; // if mode is undefined, use ‘on‘ as default

  return this.each(function() {

  switch(mode) {

  case ‘on‘:

  this.checked = true;

  break;

  case ‘off‘:

  this.checked = false;

  break;

  case ‘toggle‘:

  this.checked = !this.checked;

  break;

  }

  });

  };

  这里我们设置了默认的参数,所以将"on"参数省略也是可以的,当然也可以加上"on","off", 或 "toggle",如:

  $("input[@type=‘checkbox‘]").check();

  $("input[@type=‘checkbox‘]").check(‘on‘);

  $("input[@type=‘checkbox‘]").check(‘off‘);

  $("input[@type=‘checkbox‘]").check(‘toggle‘);

  如果有多于一个的参数设置会稍稍有点复杂,在使用时如果只想设置第二个参数,则要在第一个参数位置写入null.从上一章的tablesorter插件用法我们可以看到,既可以省略所有参数来使用或者通过一个 key/value 对来重新设置每个参数.作为一个练习,你可以试着将 第四章 的功能重写为一个插件.这个插件的骨架应该是像这样的:

  $.fn.rateMe = function(options) {

  var container = this; // instead of selecting a static container with $("#rating"), we now use the jQuery context

  var settings = {

  url: "rate.php"

  // put more defaults here

  // remember to put a comma (",") after each pair, but not after the last one!

  };

  if(options) { // check if options are present before extending the settings

  $.extend(settings, options);

  }

  // ...

  // rest of the codehttp://www.120hrb.com

  // ...

  return this; // if possible, return "this" to not break the chain

  });

时间: 2024-10-07 05:30:23

jQuery起点教程之插件制作的相关文章

jQuery起点教程之使用AJAX

在这一部分我们写了一个小小的AJAX应用,它能够rate一些东西(译Keel注:就是对某些东西投票),就像在youtube.com上面看到的一样. 首先我们需要一些服务器端代码,这个例子中用到了一个PHP文件,读取rating参数然后返回rating总数和平均数.看一下rate.php代码. 虽然这些例子也可以不使用AJAX来实现,但显示我们不会那么做,我们用jQuery生成一个DIV容器,ID是"rating". $(document).ready(function() { // g

【超酷超实用】CSS3可滑动跳转的分页插件制作教程

原文:[超酷超实用]CSS3可滑动跳转的分页插件制作教程 今天我要向大家分享一款很特别的CSS3分页插件,这款分页插件不仅可以点击分页按钮来实现分页,而且可以滑动滑杆来实现任意页面的跳转,看看都非常酷,很适合一些个性化的个人网站使用,当然,这款分页插件也适合ajax翻页,效果都挺不错的.先来看看效果图: 怎么样,还挺酷的吧. 当然你也可以在这里查看插件的DEMO演示. 接下来我们来分享一下源码的实现思路,这里用到了jQuery UI框架,这么酷的滑杆是靠它实现的,不然,写的累死.. 首先是HTM

WordPress插件制作教程(八): 最后总结

WordPress插件教程最后一篇,还是为大家简单的做下总结.这次插件制作教程讲的内容和知识点个人觉得不是很多,因为插件制作不单单是这些内容,它涉及的知识很多很多,不是说你会一些函数就可以做出一个好的插件,还需要各方面的结合. 这次的WordPress插件教程主要是简单的为大家讲解了一些基本的知识和要点,但这些是远远不够的.你还需要多多的去实践去研究,在WordPress插件教程概述中也提到过,制作插件你得有PHP方面的知识,你的PHP学习的好坏对你制作插件的是有一定的影响的,除此之外你还得会基

JQuery插件制作具有动态效果的网页

JQuery插件 制作具有动态效果的网页   前  言 JQuery 今天我给大家介绍一个运用JQuery插件制作的动态网页--iphone 5C 宣传页面.这个网页中运用到了fullpage.js和move.js两个插件. 动态效果           1导入插件 在这个页面中需要用到三款插件,分别是jquery-3.1.1.js(JQuery 3.1.1版本).jquery.fullPage.js(附带jquery.fullPage.css)和 move.js 动画插件. 导入顺序也如上所示

jQuery拖拽插件制作拖拽排序特效

基于jQuery拖拽插件制作拖拽排序特效是一款非常实用的鼠标拖拽布局插件.效果图如下: 在线预览   源码下载 实现的代码. html代码: <h1>水平拖拽</h1> <div class="demo"> <div class="item item1"><span>1</span></div> <div class="item item2"><

jQuery插件制作方法详解

jQuery插件制作方法详解 jquery插件给我的感觉清一色的清洁,简单.如Jtip,要使用它的功能,只需要在你的元素的class上加 上Jtip,并引入jtip.js及其样式即可以了.其他事情插件全包.我喜欢jquery的一个重要原因是发现她已经有了很多很好,很精彩的插件.写一 个自己的jQuery插件是非常容易的,如果你按照下面的原则来做,可以让其他人也容易地结合使用你的插件. jquery插件给我的感觉清一色的清洁,简单.如Jtip,要使用它的功能,只需要在你的元素的class上加上Jt

WordPress插件制作教程(一): 如何创建一个插件

上一篇还是按照之前的教程流程,写了一篇WordPress插件制作教程概述,从这一篇开始就为大家具体讲解WordPress插件制作的内容.这一篇主要说一下插件的创建方法. 相信大家都知道插件的安装文件在什么地方吧,没错就在WP-Content->plugins里面,我们所安装的插件都存放在了这个文件夹里面.当我们刚开始搭建好WordPress网站的时候,里面会默认提供两个插件,一个是Akismet(过滤垃圾评论插件)和一个hello插件(显示歌词的插件).我们可以打开hello.php这个文件,这

jquery基础教程 - 第一章 JQUERY入门

Jquery基础教程 - 第一章 JQUERY入门 内容提要 1.jquery能做什么 2.jquery为什么如此出色 3.第一个jquery驱动的页面 4.纯javascript与jquery 5.开发工具 6.小结 1.jquery能做什么 取得文档中的元素 -- jQuery为准确的获得需要检查或操纵的文档元素,提供了可靠而富有效率的选择符机制. 找到所有应用了.content class样式的div中所有的P标签             $('div.content').find('p'

JQuery插件开发教程

原文:JQuery插件开发教程 要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统.这好比大公司们争相做平台一样,得平台者得天下.苹果,微软,谷歌等巨头,都有各自的平台及生态圈. 学会使用jQuery并不难,因为它简单易学,并且相信你接触jQuery后肯定也使用或熟悉了不少其插件.如果要将能力上升一个台阶,编写一个属于自己的插件是个不错的选择. 本教程可能不是最精品的,但一定是最细致的. jQuery插件开发模式 软件开发过程中是需要一定的