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 相关文章推荐
ASP.NET jQuery 实例10 动态修改hyperlink的URL值
Feb 03 Javascript
jQuery中:last-child选择器用法实例
Dec 31 Javascript
javascript使用smipleChart实现简单图表
Jan 02 Javascript
jquery显示loading图片直到网页加载完成的方法
Jun 25 Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
Jun 24 Javascript
AngularJS 基础ng-class-even指令用法
Aug 01 Javascript
MUI 解决动态列表页图片懒加载再次加载不成功的bug问题
Apr 13 Javascript
vue单页开发父子组件传值思路详解
May 18 Javascript
JS随机密码生成算法
Sep 23 Javascript
angular中的post请求处理示例详解
Jun 30 Javascript
js实现3D旋转相册
Aug 02 Javascript
全局安装 Vue cli3 和 继续使用 Vue-cli2.x操作
Sep 08 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获取网卡的MAC地址支持WIN/LINUX系统
2014/04/30 PHP
php生成随机密码自定义函数代码(简单快速)
2014/05/10 PHP
javascript数组与php数组的地址传递及值传递用法实例
2015/01/22 PHP
PHP计算加权平均数的方法
2015/07/16 PHP
实例讲解php数据访问
2016/05/09 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
2017/12/21 PHP
详解PHP文件的自动加载(autoloading)
2018/02/04 PHP
PHP内存溢出优化代码详解
2021/02/26 PHP
jquery 模拟类搜索框自动完成搜索提示功能(改进)
2010/05/24 Javascript
window.location.reload()方法刷新页面弹出要再次显示该网页对话框
2013/04/24 Javascript
js判断输入是否为数字的具体实例
2013/08/03 Javascript
js实现页面转发功能示例代码
2013/08/05 Javascript
用Jquery实现滚动新闻
2014/02/12 Javascript
JavaScript中的闭包介绍
2015/03/15 Javascript
AngularJS快速入门
2015/04/02 Javascript
jquery图片轮播特效代码分享
2020/04/20 Javascript
JS获取时间的相关函数及时间戳与时间日期之间的转换
2016/02/04 Javascript
bootstrap table动态加载数据示例代码
2017/03/25 Javascript
vue多页面项目中路由使用history模式的方法
2019/09/23 Javascript
小程序跳转到的H5页面再跳转回跳小程序的方法
2020/03/06 Javascript
antd Form组件方法getFieldsValue获取自定义组件的值操作
2020/10/29 Javascript
pandas计数 value_counts()的使用
2019/06/24 Python
Python Django 添加首页尾页上一页下一页代码实例
2019/08/21 Python
详解python播放音频的三种方法
2019/09/23 Python
python自动化测试之异常及日志操作实例分析
2019/11/09 Python
python使用numpy实现直方图反向投影示例
2020/01/17 Python
k-means 聚类算法与Python实现代码
2020/06/01 Python
哈曼俄罗斯官方网上商店:Harman.club
2020/07/24 全球购物
优秀干部获奖感言
2014/01/31 职场文书
优秀公益广告词大全
2014/03/19 职场文书
入股合作协议书
2014/10/12 职场文书
2014年党建工作汇报材料
2014/10/27 职场文书
思想道德自我评价2015
2015/03/09 职场文书
导游词之宿迁乾隆行宫
2019/10/15 职场文书
浅谈Redis主从复制以及主从复制原理
2021/05/29 Redis
Android开发实现极为简单的QQ登录页面
2022/04/24 Java/Android