



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JQuery插件写法的总结2010-09-20 09:07JQuery插件写法的总结最近Web应用程序中越来越多地用到了JQuery等Web前端技术。这些技术框架有效地改善了用户的操作体验,同时也提高了开发人员构造丰富客户 端UI的效率。JQuery本身提供了丰富的操作,但是,有时候我们需要根据我们自己的业务和系统特色(风格)构造一些我们常用的前端UI组件,而 JQuery的插件给了我们一个较好的方式来构造这些UI组件,方便我们日后反复重用这些组件。网上也有很多关于JQuery插件的文章,我也搜了一些,但是,这些文档太过离散,没有有效地组织并充分说明JQuey插件该如何编写,并且有哪几种形式,什么情况下使用哪种形式。下面,我将说明JQuery插件常用的写法,以及这些插件的常用场景。首先,在具体说明编写插件之前,我们先假定一个使用场景:有一个HTML页面(或.aspx页面),页面上放置了一个5行3列的表格,即:标记,具体代码如下:111111111111111我要实现的功能是:鼠标移到表格的某一行时,当前行高亮显示,其他行正常。OK,结合这个场景,我们进一步探讨如何利用JQuery插件实现上述功能。常用的JQuery插件有如下几种写法:1. 对JQuery自身的扩展插件顾名思义,这种插件是对JQuery自身的方法库进行扩展的。在使用的时候通过$.MethodName()的方式直接使用。插件代码示例:$.extend(handleTableUI : function(table)var thisTable = $(# + table);$(thisTable).find(tr).bind(mouseover, function () $(this).css( color: #ff0011, background: blue ););$(thisTable).find(tr).bind(mouseout, function () $(this).css( color: #000000, background: white );););示 例说明:当要对JQuery自身进行扩展的时候,需要采用$.extend();的形式进行开发,JQuery的extend()方法为我们提供了扩展 JQuery自身的方式,在extend()方法中,我们采用.的形式编写具体的方法体。其中,最重要的是要定义我们自己的扩展方法,如示例中的 handleTableUI。定义的方式是:方法名 : function(参数) 方法体 。通过此种方式我们就可以定义JQuery自己的扩展方法,而且这个方法可以在web页面通过智能提示显示出来。页面中调用的代码如下:$(document).ready(function () $.handleTableUI(newTable););2.对HTML标记或页面元素进行扩展使用这种插件的扩展方式,在使用此插件时,需要首先引用经过JQuery包装的页面元素,如:$(#tableId).Method()。插件代码示例:(function ($) $.fn.setTableUI = function(options)var defaults = evenRowClass:evenRow,oddRowClass:oddRow,activeRowClass:activeRow var options = $.extend(defaults, options);this.each(function()var thisTable=$(this);$(thisTable).find(tr).bind(mouseover, function () $(this).css( color: #ff0011, background: blue ););$(thisTable).find(tr).bind(mouseout, function () $(this).css( color: #000000, background: white );););)(jQuery);示例说明:当要对页面元素进行JQuery扩展时,需要采用(function($).)(JQuery);的方式进行开发。在“.”处,定义我们自己的方法,定义方式是:$.fn.自定义方法名 = function(参数).;的形式定义扩展方法的具体内容。在页面调用的时候不同于对JQuery自身的扩展。具体调用代码如下:$(document).ready(function () $(#newTable).setTableUI(););3. 不要用在页面显式调用JQuery的方法,而是通过直接添加JQuery插件脚本引用,即可实现对该插件的调用。一 般,如果需要用到一些全局的JQuery插件,即:插件的方法不需要显式调用,而是引用脚本即可;同时,这种插件一般对整个Web页面起到全局配置或设置 的作用,如:对内部的内容进行整体布局,此时可以采用脚本引用的方式实现。插件代码示例:(function ($) $.tableUI = set: function () var thisTable = $(table);$(thisTable).find(tr).bind(mouseover, function () $(this).css( color: #ff0011, background: blue ););$(thisTable).find(tr).bind(mouseout, function () $(this).css( color: #000000, background: white ););/此处需要进行自调用$(function () $.tableUI.set(););)(jQuery);示例说明:如果上面这段代码在my.plugin.js文件中,那么,我们只需要在页面上添加对此脚本文件的引用即可,引用方式为: ,当然,在所有要用到JQuery的地方,需要首先添加对JQu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025杭州市钱塘区教育局所属事业单位在职教师直接考核招聘37人考前自测高频考点模拟试题完整参考答案详解
- 2025广东阳江阳西县政府发展研究中心就业见习岗位1人模拟试卷有完整答案详解
- 2025内蒙古巴彦淖尔市能源(集团)有限公司招聘48人(第一批)考前自测高频考点模拟试题及答案详解(有一套)
- 2025年福建省厦门实验中学招聘1人考前自测高频考点模拟试题及完整答案详解一套
- 2025年安阳市疾病预防控制中心公开招聘工作人员15名模拟试卷及答案详解(有一套)
- 2025年5月四川雅安市公益性岗位安置计划4人模拟试卷及1套完整答案详解
- 2025年日照科技职业学院公开招聘教师41人模拟试卷及答案详解一套
- 2025广东深圳市龙岗区城市建设投资集团有限公司招聘第一批拟聘用人选考前自测高频考点模拟试题及参考答案详解一套
- 2025年北京师范大学榆林实验学校教师招聘(42人)考前自测高频考点模拟试题及答案详解(夺冠)
- 2025国道316线南平下岚超限运输检测站招聘交通执法辅助人员模拟试卷有完整答案详解
- 劳动课冰箱清洁课件
- 2025年公共基础知识考试试题及参考答案详解
- 建筑设计数字化协同工作方案
- 新入行员工安全教育培训课件
- 原生家庭探索课件
- 人教版音乐八年级上册-《学习项目二探索旋律结构的规律》-课堂教学设计
- 《中国人民站起来了》课件 (共50张)2025-2026学年统编版高中语文选择性必修上册
- 中国企业供应链金融白皮书(2025)-清华五道口
- 医院常用消毒液的使用及配置方法
- 2022英威腾MH600交流伺服驱动说明书手册
- 分期支付欠薪协议书范本
评论
0/150
提交评论