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 相关文章推荐
JS控制文本框textarea输入字数限制的方法
Jun 17 Javascript
js一般方法改写成面向对象方法的无限级折叠菜单示例代码
Jul 04 Javascript
jQuery点击自身以外地方关闭弹出层的简单实例
Dec 24 Javascript
判断及设置浏览器全屏模式
Apr 20 Javascript
JS 排序输出实现table行号自增前端动态生成的tr
Aug 13 Javascript
使用Bootstrap框架制作查询页面的界面实例代码
May 27 Javascript
Bootstrap3.3.7导航栏下拉菜单鼠标滑过展开效果
Oct 31 Javascript
mpvue性能优化实战技巧(小结)
Apr 17 Javascript
vue用BMap百度地图实现即时搜索功能
Sep 26 Javascript
基于Angular 8和Bootstrap 4实现动态主题切换的示例代码
Feb 11 Javascript
JavaScript图片旋转效果实现方法详解
Jun 28 Javascript
vue下拉刷新组件的开发及slot的使用详解
Dec 23 Vue.js
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 文章采集正则代码
2009/12/28 PHP
php设计模式 DAO(数据访问对象模式)
2011/06/26 PHP
8个必备的PHP功能实例代码
2013/10/27 PHP
php基于PDO实现功能强大的MYSQL封装类实例
2017/02/27 PHP
PHP实现下载远程图片保存到本地的方法
2017/06/19 PHP
PHP创建对象的六种方式实例总结
2019/06/27 PHP
深入认识javascript中的eval函数
2009/11/02 Javascript
Web 前端设计模式--Dom重构 提高显示性能
2010/10/22 Javascript
Js实现网页键盘控制翻页的方法
2014/10/30 Javascript
javascript如何创建对象
2016/08/29 Javascript
javascript中异常处理案例(推荐)
2016/10/03 Javascript
JS+Canvas实现的俄罗斯方块游戏完整实例
2016/12/12 Javascript
JS正则表达式之非捕获分组用法实例分析
2016/12/28 Javascript
简单实现jQuery级联菜单
2017/01/09 Javascript
微信小程序 九宫格实例代码
2017/01/21 Javascript
JS三目运算(三元运算)方法详解
2017/03/01 Javascript
Vue中的v-cloak使用解读
2017/03/27 Javascript
JS去掉字符串前后空格、阻止表单提交的实现代码
2017/06/08 Javascript
vue2路由基本用法实例分析
2020/03/06 Javascript
详解JavaScript中的Object.is()与&quot;===&quot;运算符总结
2020/06/17 Javascript
Python3实现从指定路径查找文件的方法
2015/05/22 Python
浅谈python配置与使用OpenCV踩的一些坑
2018/04/02 Python
详解Django中CBV(Class Base Views)模型源码分析
2019/02/25 Python
Django中使用CORS实现跨域请求过程解析
2019/08/05 Python
Anaconda和ipython环境适配的实现
2020/04/22 Python
HTML5拖放API实现拖放排序的实例代码
2017/05/11 HTML / CSS
HTML5 Blob对象的具体使用
2020/05/22 HTML / CSS
韩国演唱会订票网站:StubHub韩国
2019/01/17 全球购物
毕业生怎样写好自荐信
2013/11/11 职场文书
四查四看剖析材料
2014/02/14 职场文书
买卖协议书范本
2014/04/21 职场文书
放飞梦想演讲稿600字
2014/08/26 职场文书
设备技术员岗位职责
2015/04/11 职场文书
2016形势与政策学习心得体会
2016/01/12 职场文书
教师正风肃纪心得体会
2016/01/15 职场文书
入党心得体会
2019/06/20 职场文书