JS-插件编写
# 参数处理
JS:
function plugin_mian_func(options){
var defaluts = {
opt1: 'opt1',
opt2: 'opt2',
opt3: {
opt3_1: 'opt3_1',
opt3_2: 'opt3_2',
}
};
// 覆盖插件默认参数
var options = (function(){
// IE不支持Object.assign
return Object.hasOwnProperty('assign') ? Object.assign({},defaluts,options) : (function(){
for(var name in options){
defaluts[name] = options[name];
}
return defaluts;
})(defaluts, options)
})(defaluts, options);
console.log(options);
}
// 测试
plugin_mian_func({opt1:'user_opt1',opt3: {opt3_1: 'user_opt3_1', opt3_3: 'user_opt3_1'}});
jQuery:
function plugin_mian_func(options){
var defaluts = {
opt1: 'opt1',
opt2: 'opt2',
opt3: {
opt3_1: 'opt3_1',
opt3_2: 'opt3_2',
}
};
// 使用jQuery.extend 覆盖插件默认参数
var options = $.extend({}, defaluts, options);
console.log(options);
}
// 测试
plugin_mian_func({opt1:'user_opt1',opt3: {opt3_1: 'user_opt3_1', opt3_3: 'user_opt3_1'}});
最新文章
- ASP.NET页面回车键触发Button按钮事件问题
- Type mismatch: cannot convert from java.sql.PreparedStatement to com.mysql.jdbc.PreparedStatement
- POJ 1190(深搜)
- oracle字符函数
- WebApp开发经验
- poj 3250 Bad Hair Day【栈】
- web前端:css
- iOS - Blocks
- JMS样本
- UIKit类结构图
- width为auto或者100%的区别
- PAT (Advanced Level) 1040. Longest Symmetric String (25)
- Javascript 严格模式use strict
- 写一个Vue loading 插件
- ajax跨站请求伪造
- git工作流程一览
- 习题9-6 uva 10723
- Redis 学习笔记4: Redis 3.2.1 集群搭建
- windows 如何创建硬链接
- python实现Content-Type类型为application/x-www-form-urlencoded发送POST请求