js插件怎么写?

很多情况下,在网上寻找现成的插件并不能满足一些特殊的要求

很多的牛人都会自己去写插件来一劳永逸的解决问题。

今天写了个小例子来对插件有一个初步的认识

下面是代码

<html>
	<head>
		<title></title>
		<style type="text/css">
		</style>
	</head>
	<body>
		<div id="aa">
			ddddd
		</div>
		<script type="text/javascript">
		    
			;(function(w){
				var default_option = {
					bgGround:"red",
					fontColor:"green"
				}
				w.mytool = {
					change:function(e){
						e.style.backgroundColor = default_option.bgGround;
						e.style.color = default_option.fontColor;
					}
				}
			})(window)
			
			mytool.change(document.querySelector("#aa"));
		</script>
	</body>
</html>

这个插件的作用很简单,讲字体的颜色变成绿色,背景变成红色。

关键点有几个:

1、function(w){}(window)   立即执行   w是形参   window是实参   window作为参数会通过w来传入

2、前面有个分号,这个分号其实是为了防止前一句的代码忘记加分号而导致错误。不信的话,插件前面写个alert不加分号试试。

3、还有个问题没解决,万一我原先有个变量叫做mytool呢。。。

       果然,如果我们在插件后面定义一个mytool变量,插件就不能用了

       细细想也是哈,都是全局变量,肯定后来者居上喽

       想想java里面怎么做的,命名空间塞

       如下

      

                         var yhn = {};
			(function(w){
				var default_option = {
					bgGround:"red",
					fontColor:"green"
				}
				w.mytool = {
					change:function(e){
						e.style.backgroundColor = default_option.bgGround;
						e.style.color = default_option.fontColor;
					}
				}
			})(window)
			yhn.mytool =1;
			alert(yhn.mytool);
			mytool.change(document.querySelector("#aa"));
这不就ok

 才疏学浅  欢迎吐槽

       

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值