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 相关文章推荐
javascript 弹出窗口中是否显示地址栏的实现代码
Apr 14 Javascript
JavaScript自动设置IFrame高度的小例子
Jun 08 Javascript
JQuery异步获取返回值中文乱码的解决方法
Jan 29 Javascript
jQuery实现的图文高亮滚动切换特效实例
Aug 10 Javascript
js实现简洁的滑动门菜单(选项卡)效果代码
Sep 04 Javascript
解决前端跨域问题方案汇总
Nov 20 Javascript
微信小程序 基础组件与导航组件详细介绍
Feb 21 Javascript
微信小程序分页加载的实例代码
Jul 11 Javascript
详解如何用webpack打包一个网站应用项目
Jul 12 Javascript
Vue实现动态创建和删除数据的方法
Mar 17 Javascript
微信小程序如何实现五星评价功能
Oct 15 Javascript
vue使用swiper.js重叠轮播组建样式
Nov 14 Javascript
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
Adodb的十个实例(清晰版)
2006/12/31 PHP
php下删除一篇文章生成的多个静态页面
2010/08/08 PHP
php实现自定义中奖项数和概率的抽奖函数示例
2017/05/26 PHP
一个用js实现的页内搜索代码
2007/05/23 Javascript
SlideView 图片滑动(扩展/收缩)展示效果
2010/08/01 Javascript
js 延迟加载 改变JS的位置加快网页加载速度
2012/12/11 Javascript
元素未显示设置width/height时IE中使用currentStyle获取为auto
2014/05/04 Javascript
Js 获取、判断浏览器版本信息的简单方法
2016/08/08 Javascript
JavaScript 对象详细整理总结
2016/09/29 Javascript
微信小程序 loading 详解及实例代码
2016/11/09 Javascript
微信小程序 网络API 上传、下载详解
2016/11/09 Javascript
浅谈react.js 之 批量添加与删除功能
2017/04/17 Javascript
原生JS发送异步数据请求
2017/06/08 Javascript
Vue写一个简单的倒计时按钮功能
2018/04/20 Javascript
三分钟学会用ES7中的Async/Await进行异步编程
2018/06/14 Javascript
JS开发 富文本编辑器TinyMCE详解
2019/07/19 Javascript
JS回调函数原理与用法详解【附PHP回调函数】
2019/07/20 Javascript
解决Vue-cli3没有vue.config.js文件夹及配置vue项目域名的问题
2020/12/04 Vue.js
Python中的FTP通信模块ftplib的用法整理
2016/07/08 Python
Python如何生成树形图案
2018/01/03 Python
Python 元类实例解析
2018/04/04 Python
python调用API实现智能回复机器人
2018/04/10 Python
django 开发忘记密码通过邮箱找回功能示例
2018/04/17 Python
python 读取DICOM头文件的实例
2018/05/07 Python
python爬虫解决验证码的思路及示例
2019/08/01 Python
Python 实现劳拉游戏的实例代码(四连环、重力四子棋)
2021/03/03 Python
详解Canvas 实现炫丽的粒子运动效果(粒子生成文字)
2018/02/01 HTML / CSS
VICHY薇姿英国官网:全球专业敏感肌护肤领先品牌
2017/07/04 全球购物
Linux面试经常问的文件系统操作命令
2016/10/04 面试题
一道输出判断型Java面试题
2014/10/01 面试题
公司会计岗位职责
2014/02/13 职场文书
车间核算员岗位职责
2014/07/01 职场文书
大学生读书笔记范文
2015/07/01 职场文书
如何书写读后感?(附范文)
2019/07/26 职场文书
Python 使用dict实现switch的操作
2021/04/07 Python
SQL实现LeetCode(176.第二高薪水)
2021/08/04 MySQL