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 相关文章推荐
最常用的12种设计模式小结
Aug 09 Javascript
Js控制弹窗实现在任意分辨率下居中显示
Aug 01 Javascript
JSON序列化与解析原生JS方法且IE6和chrome测试通过
Sep 05 Javascript
js转义字符介绍
Nov 05 Javascript
jquery组件使用中遇到的问题整理及解决
Feb 21 Javascript
JS跨域问题详解
Nov 25 Javascript
详解axios在node.js中的post使用
Apr 27 Javascript
基于Bootstrap表单验证功能
Nov 17 Javascript
微信小程序实现点击按钮修改文字大小功能【附demo源码下载】
Dec 06 Javascript
vue中动态设置meta标签和title标签的方法
Jul 11 Javascript
Jquery的Ajax技术使用方法
Jan 21 jQuery
react中props 的使用及进行限制的方法
Apr 28 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
十大“创意”战术!
2020/03/04 星际争霸
通过文字传递创建的图形按钮
2006/10/09 PHP
Ping服务的php实现方法,让网站快速被收录
2012/02/04 PHP
PHP判断手机是IOS还是Android
2015/12/09 PHP
WordPress中编写自定义存储字段的相关PHP函数解析
2015/12/25 PHP
PHP使用JpGraph绘制折线图操作示例【附源码下载】
2019/10/18 PHP
Avengerls vs Newbee BO3 第一场2.18
2021/03/10 DOTA
Firefox div高度自适应
2009/04/28 Javascript
Jquery AJAX 用于计算点击率(统计)
2010/06/30 Javascript
20款超赞的jQuery插件 Web开发人员必备
2011/02/26 Javascript
jQuery前台数据获取实现代码
2011/03/16 Javascript
ExtJS如何设置与获取radio控件的选取状态
2014/01/22 Javascript
js面向对象编程之如何实现方法重载
2014/07/02 Javascript
深入浅析JS Function()构造函数
2016/08/22 Javascript
jQuery实现checkbox列表的全选、反选功能
2016/11/24 Javascript
最好用的Bootstrap fileinput.js文件上传组件
2016/12/12 Javascript
微信小程序websocket实现聊天功能
2020/03/30 Javascript
JS滚轮控制图片缩放大小和拖动的实例代码
2018/11/20 Javascript
在vue中使用vuex,修改state的值示例
2019/11/08 Javascript
Python自动扫雷实现方法
2015/07/25 Python
python中常用的九种预处理方法分享
2016/09/11 Python
python定向爬取淘宝商品价格
2018/02/27 Python
Python3导入自定义模块的三种方法详解
2018/04/13 Python
Python3非对称加密算法RSA实例详解
2018/12/06 Python
Python3网络爬虫中的requests高级用法详解
2019/06/18 Python
Django上使用数据可视化利器Bokeh解析
2019/07/31 Python
Django 1.10以上版本 url 配置注意事项详解
2019/08/05 Python
springboot配置文件抽离 git管理统 配置中心详解
2019/09/02 Python
html5 迷宫游戏(碰撞检测)实例一
2013/07/25 HTML / CSS
高等教育专业自荐信范文
2014/03/26 职场文书
纪念九一八事变演讲稿:青少年应树立远大理想
2014/09/14 职场文书
幼儿园学前班幼儿评语
2014/12/29 职场文书
质量整改通知单
2015/04/21 职场文书
2015年艾滋病防治工作总结
2015/05/22 职场文书
Python 实现绘制子图及子图刻度的变换等问题
2021/05/31 Python
电脑无法安装Windows 11怎么办?无法安装Win11的解决方法
2021/11/21 数码科技