JS实现一个按钮的方法


Posted in Javascript onFebruary 05, 2015

本文实例讲述了JS实现一个按钮的方法。分享给大家供大家参考。具体实现方法如下:

<!doctype html> 
<html> 
  <head> 
    <meta charset="utf-8"> 
    <meta http-equiv="X-UA-Compatible" content="edge"> 
    <script> 
    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](); 
        } 
      } 
    } 
    </script> 
  </head> 
  <body> 
  <a id="btn" style="margin-top: 40px;" >12</a> 
  </body> 
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
Javascript注入技巧
Jun 22 Javascript
js里取容器大小、定位、距离等属性搜集整理
Aug 19 Javascript
JS保存和删除cookie操作 判断cookie是否存在
Nov 13 Javascript
js数组方法扩展实现数组统计函数
Apr 09 Javascript
JavaScript中对象属性的添加和删除示例
May 12 Javascript
基于JS实现密码框(password)中显示文字提示功能代码
May 27 Javascript
Angular在模板驱动表单中自定义校验器的方法
Aug 09 Javascript
详解js的作用域、预解析机制
Feb 05 Javascript
JQuery特殊效果和链式调用操作示例
May 13 jQuery
Vue通过WebSocket建立长连接的实现代码
Nov 05 Javascript
在vue项目中引用Antv G2,以饼图为例讲解
Oct 28 Javascript
在vue中使用jsonp进行跨域请求接口操作
Oct 29 Javascript
JS继承用法实例分析
Feb 05 #Javascript
Javascript实现Web颜色值转换
Feb 05 #Javascript
JS表的模拟方法
Feb 05 #Javascript
JS的数组迭代方法
Feb 05 #Javascript
js实现照片墙功能实例
Feb 05 #Javascript
js实现仿百度瀑布流的方法
Feb 05 #Javascript
JS函数this的用法实例分析
Feb 05 #Javascript
You might like
发一个php简单的伪原创程序,配合商城采集用的
2010/10/12 PHP
PHP依赖注入(DI)和控制反转(IoC)详解
2017/06/12 PHP
PHP策略模式定义与用法示例
2017/07/27 PHP
Jquery中增加参数与Json转换代码
2009/11/20 Javascript
Jquery+JSon 无刷新分页实现代码
2010/04/01 Javascript
js实现广告漂浮效果的小例子
2013/07/02 Javascript
jquery-syntax动态语法着色示例代码
2014/05/14 Javascript
javascript实现单击和双击并存的方法
2014/12/13 Javascript
jquery模拟进度条实现方法
2015/08/03 Javascript
js随机生成字母数字组合的字符串 随机动画数字
2015/09/02 Javascript
jQuery中iframe的操作(点击按钮新增窗口)
2016/04/20 Javascript
JS组件系列之Bootstrap table表格组件神器【二、父子表和行列调序】
2016/05/10 Javascript
Vue组件的使用教程详解
2018/01/05 Javascript
jQuery+ajax实现动态添加表格tr td功能示例
2018/04/23 jQuery
JS中超越现实的匿名函数用法实例分析
2019/06/21 Javascript
[54:05]DOTA2-DPC中国联赛定级赛 SAG vs iG BO3第一场 1月9日
2021/03/11 DOTA
零基础写python爬虫之urllib2使用指南
2014/11/05 Python
Python yield与实现方法代码分析
2018/02/06 Python
python基础教程项目三之万能的XML
2018/04/02 Python
pandas获取groupby分组里最大值所在的行方法
2018/04/20 Python
Python实现求一个集合所有子集的示例
2018/05/04 Python
利用python脚本如何简化jar操作命令
2019/02/24 Python
Python3.5 Json与pickle实现数据序列化与反序列化操作示例
2019/04/29 Python
三步实现Django Paginator分页的方法
2019/06/11 Python
详解如何用python实现一个简单下载器的服务端和客户端
2019/10/28 Python
Python3 虚拟开发环境搭建过程(图文详解)
2020/01/06 Python
PyCharm 光标变成黑块的解决方式
2021/02/06 Python
在线学习西班牙语、法语或其他语言:Babbel.com
2018/02/07 全球购物
德国专业木制品经销商:Holz-Direkt24
2019/12/26 全球购物
领导班子整改方案和个人整改措施
2014/10/25 职场文书
政风行风建设整改方案
2014/10/27 职场文书
学校党支部承诺书
2015/04/30 职场文书
清明节主题班会
2015/08/14 职场文书
《半截蜡烛》教学反思
2016/02/19 职场文书
Django路由层如何获取正确的url
2021/07/15 Python
MySQL 字符集 character
2022/05/04 MySQL