html 按钮js方法,JS实现一个按钮的方法

window.onload = function(){

var btn = new Btn();

btn.init({width:300});

bindEvent(btn,'show',function(){

alert(1);

})

bindEvent(btn,'click',function(){

alert(2);

})

var oBtn = document.getElementById('btn');

oBtn.onclick = function (){

fireEvent(btn,'show');

}

}

function Btn(){

this.btn= null;

this.settings = {

width:200,

height:40,

borderRadius:6,

text :'按钮'

};

}

Btn.prototype.init = function (opt){

extend(this.settings,opt);

this.creat();

}

Btn.prototype.creat = function (){

this.btn =document.createElement('div');

document.body.appendChild(this.btn);

this.btn.innerHTML = this.settings.text;

this.setData();

}

Btn.prototype.destory = function (){

document.body.removeChild(this.btn);

}

Btn.prototype.setData = function (){

this.btn.style.width = this.settings.width +'px';

this.btn.style.height = this.settings.height +'px';

this.btn.style.border ='solid #f00 '+ this.settings.borderRadius +'px';

}

function extend(obj1,obj2){

for(var attr in obj2){

obj1[attr] = obj2[attr];

}

}

function bindEvent(obj,events,fn){

obj.listeners = obj.listeners || {};

obj.listeners[events] = obj.listeners[events] || [];

obj.listeners[events].push( fn );

if(obj.nodeType){

if(obj.addEventListener){

obj.addEventListener(events,fn,false);

}else{

obj.attachEvent('on'+events,fn);

}

}

}

function fireEvent (obj,events){

if(obj.listeners[events]){

for(var i in obj.listeners[events]){

obj.listeners[events][i]();

}

}

}

12

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值