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 相关文章推荐
浏览器加载、渲染和解析过程黑箱简析
Nov 29 Javascript
jscript读写二进制文件的方法
Apr 22 Javascript
跟我学习javascript解决异步编程异常方案
Nov 23 Javascript
js实现兼容IE、Firefox的图片缩放代码
Dec 08 Javascript
谷歌showModalDialog()方法不兼容出现对话窗口的解决办法
Feb 15 Javascript
jQuery图片轮播插件——前端开发必看
May 31 Javascript
node.js平台下的mysql数据库配置及连接
Mar 31 Javascript
Vue Spa切换页面时更改标题的实例代码
Jul 15 Javascript
JavaScript实现简单生成随机颜色的方法
Sep 21 Javascript
详解Vue组件之间通信的七种方式
Apr 14 Javascript
微信小程序实现卡片左右滑动效果的示例代码
May 01 Javascript
使用pkg打包ThinkJS项目的方法步骤
Dec 30 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
JAVA/JSP学习系列之二
2006/10/09 PHP
header与缓冲区之间的深层次分析
2016/07/30 PHP
laravel5.2实现区分前后台用户登录的方法
2017/01/11 PHP
PHP编程快速实现数组去重的方法详解
2017/07/22 PHP
PHP基于自定义函数实现的汉字转拼音功能实例
2017/09/30 PHP
thinkphp诸多限制条件下如何getshell详解
2020/12/09 PHP
JS无法捕获滚动条上的mouse up事件的原因猜想
2012/03/21 Javascript
JavaScript函数定义的常见注意事项小结
2014/09/16 Javascript
jQuery实现元素拖拽并cookie保存顺序的方法
2016/02/20 Javascript
vue的基本用法与常见指令
2017/08/15 Javascript
在vue2.0中引用element-ui组件库的方法
2018/06/21 Javascript
vue上传图片到oss的方法示例(图片带有删除功能)
2018/09/27 Javascript
微信小程序 确认框的实现(附代码)
2019/07/23 Javascript
微信小程序页面渲染实现方法
2019/11/06 Javascript
js实现简单选项卡制作
2020/08/05 Javascript
jQuery实现增删改查
2020/12/22 jQuery
用Python计算三角函数之acos()方法的使用
2015/05/15 Python
python简单文本处理的方法
2015/07/10 Python
python语言基本语句用法总结
2019/06/11 Python
如何使用python爬虫爬取要登陆的网站
2019/07/12 Python
python 执行终端/控制台命令的例子
2019/07/12 Python
使用TensorFlow实现简单线性回归模型
2019/07/19 Python
python求最大公约数和最小公倍数的简单方法
2020/02/13 Python
澳大利亚最大的在线美发和美容零售商之一:My Hair Care & Beauty
2019/08/24 全球购物
什么是事务?为什么需要事务?
2012/01/09 面试题
在Ajax应用中信息是如何在浏览器和服务器之间传递的
2016/05/31 面试题
汽车装潢店创业计划书范文
2014/02/05 职场文书
房屋公证委托书
2014/04/03 职场文书
岗位竞聘演讲稿范文
2014/04/24 职场文书
初中学校军训方案
2014/05/09 职场文书
中职生求职信
2014/07/01 职场文书
青年志愿者服务活动总结
2015/05/06 职场文书
新娘父亲婚礼致辞
2015/07/27 职场文书
Css预编语言及区别详解
2021/04/25 HTML / CSS
pytorch 中autograd.grad()函数的用法说明
2021/05/12 Python
使用vuex-persistedstate本地存储vuex
2022/04/29 Vue.js