jquery 插件开发备注


Posted in Javascript onAugust 27, 2010

今天发现其实JQ自己早就有对这个临时数据的存储方法:

$("dom").data(“mydata”,"this is data");还有就是插件开发的时候我们经常要给插件添加方法,其实就用JS内部添加方法的方法即可

this.myfn=function(){}

下面给上一个显示部分文字的插件的源码:

(类似CSS的text-overflow,但本插件你需要提供显示几个字,用于精确控制显示数量)

/** 
* demo: 
* 1.$("#limittext").limittext(); 
* 2.$("#limittext").limittext({"limit":1}); 
* 3.$("#limittext").limittext({"limit":1,"fill":"(部分隐藏)","fillid":"aaa"}); 
* 4.$("#limittext").limittext({"limit":1,"fill":"(部分隐藏)","fillid":"aaa"}).limit(10); * 5.$("#limittext").limittext({"limit":1,"fill":"(部分隐藏)","fillid":"aaa"}).limit('all'); 
* @param {Object} opt 
* @author Lonely * @link http://liushan.net 
*/ 
jQuery.fn.extend({ 
limittext:function(opt){ 
opt=$.extend({ 
"limit":30, 
"fill":"...", 
"fillid":null 
},opt); 
var $this=$(this); 
var body=$(this).data('body'); 
if(body==null){ 
body=$this.html(); 
$(this).data('body',body); 
} 
this.limit=function(limit){ 
if(body.length<=limit||limit=='all') 
var showbody=body; 
else{ 
if(opt.fillid==null) 
var showbody=body.substring(0,limit)+opt.fill; 
else 
var showbody=body.substring(0,limit)+"<span id='"+opt.fillid+"'>"+opt.fill+"<span>"; 
} 
$(this).html(showbody); 
} 
this.limit(opt.limit); 
return this; 
} 
});
Javascript 相关文章推荐
JS OOP包机制,类创建的方法定义
Nov 02 Javascript
JS实现金额转换(将输入的阿拉伯数字)转换成中文的实现代码
Sep 30 Javascript
js使用ajax读博客rss示例
May 06 Javascript
浅谈Javascript中深复制
Dec 01 Javascript
JavaScript学习笔记之ES6数组方法
Mar 25 Javascript
ui组件之input多选下拉实现方法(带有搜索功能)
Jul 14 Javascript
原生js编写焦点图效果
Dec 08 Javascript
angular学习之ngRoute路由机制
Apr 12 Javascript
iconfont的三种使用方式详解
Aug 05 Javascript
解决vue 打包发布去#和页面空白的问题
Sep 04 Javascript
JS面向对象编程基础篇(三) 继承操作实例详解
Mar 03 Javascript
Vue实现图书管理小案例
Dec 03 Vue.js
Jquery + Ajax调用webService实例代码(asp.net)
Aug 27 #Javascript
JavaScript使用过程中需要注意的地方和一些基本语法
Aug 26 #Javascript
ExtJs GridPanel简单的增删改实现代码
Aug 26 #Javascript
javascript oop开发滑动(slide)菜单控件
Aug 25 #Javascript
JavaScript初学者需要了解10个小技巧
Aug 25 #Javascript
离开页面时检测表单元素是否被修改,提示保存的js代码
Aug 25 #Javascript
js中判断控件是否存在
Aug 25 #Javascript
You might like
PHP 截取字符串专题集合
2010/08/19 PHP
php中DOMElement操作xml文档实例演示
2013/03/26 PHP
PHP实现的多彩标签效果代码分享
2014/08/21 PHP
详解php设置session(过期、失效、有效期)
2015/11/12 PHP
/etc/php-fpm.d/www.conf 配置注意事项
2017/02/04 PHP
老生常谈php 正则中的i,m,s,x,e分别表示什么
2017/03/02 PHP
几个比较实用的JavaScript 测试及效验工具
2010/04/18 Javascript
javascript针对DOM的应用分析(二)
2012/04/15 Javascript
js编写trim()函数及正则表达式的运用
2013/10/24 Javascript
js中Math之random,round,ceil,floor的用法总结
2013/12/26 Javascript
深入理解JavaScript中的箭头函数
2015/07/28 Javascript
jquery判断复选框是否被选中的方法
2015/10/16 Javascript
JavaScript程序设计之JS调试
2015/12/09 Javascript
原生javascript实现匀速运动动画效果
2016/02/26 Javascript
基于javascript显示当前时间以及倒计时功能
2016/03/18 Javascript
AngularJS中实现用户访问的身份认证和表单验证功能
2016/04/21 Javascript
Bootstrap3制作图片轮播效果
2016/05/12 Javascript
详解jQuery中的事件
2016/12/14 Javascript
js实现旋转木马效果
2017/03/17 Javascript
React Native基础入门之初步使用Flexbox布局
2018/07/02 Javascript
Python中使用PIPE操作Linux管道
2015/02/04 Python
进一步了解Python中的XML 工具
2015/04/13 Python
Python实现爬取逐浪小说的方法
2015/07/07 Python
Python中字典的setdefault()方法教程
2017/02/07 Python
python爬虫面试宝典(常见问题)
2018/03/02 Python
Pycharm 设置默认头的图文教程
2019/01/17 Python
PyQt5 文本输入框自动补全QLineEdit的实现示例
2020/05/13 Python
美国知名的网上鞋类及相关服装零售商:Shoes.com
2017/05/06 全球购物
Coggles美国/加拿大:高级国际时装零售商
2018/10/23 全球购物
什么是.net的Remoting技术
2016/07/08 面试题
大学生蛋糕店创业计划书
2014/01/13 职场文书
小学数学国培感言
2014/03/10 职场文书
会展策划与管理专业求职信
2014/06/09 职场文书
证婚人致辞精选
2015/07/28 职场文书
2016廉洁从业学习心得体会
2016/01/19 职场文书
Nginx跨域问题解析与解决
2022/08/05 Servers