JavaScript实现的可变动态数字键盘控件方式实例代码


Posted in Javascript onJuly 15, 2017

整理文档,搜刮出一个JavaScript实现的可变动态数字键盘控件方式实例代码,稍微整理精简一下做下分享。

@sunRainAmazing

JavaScript编写和实现的可变动态键盘密码输入控件,可以动态的生产数字键盘并显示,并且可以实现每次点击后密码键盘重新加载,可以手动刷新功能。

JavaScript实现的可变动态数字键盘控件方式实例代码

第一种方式,点击查看:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>洗牌算法dynamicKeyboard</title>
  <style>
    .s{color:red;}
    button{width:30px;height:30px; margin-top:5px;text-align: center;}
  </style>
</head>
<body>
  <div>
    <button id="s1" class="s"></button>
    <button id="s2" class="s"></button>
    <button id="s3" class="s"></button>
  <div>
  <div>
    <button id="s4" class="s"></button>
    <button id="s5" class="s"></button>
    <button id="s6" class="s"></button>
  <div>
  <div>
    <button id="s7" class="s"></button>
    <button id="s8" class="s"></button>
    <button id="s9" class="s"></button>
  <div>
  <div>
    <button id="sa" >K</button>
    <button id="s0" class="s"></button>
    <button id="sb" >C</button>
  <div>
  <p>
   <a href="javascript:void(0);" id="keyboard">点击刷新</a>
  </p>
  <script src="http://cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
  <script type="text/javascript">

    function changeKeyboard(){
      var arr = shuffling();
      var sp = $(".s");
      console.log(sp);
      for (var i = 0; i < sp.length; i++) {
        $(sp[i]).text(arr[i]);
      }

    /**
     * //选择两个[0...array.Length)之间的随机数,
     * 把它们做下标的两个元素交换位置(这样乱序效率高) 
     * 说明:这是“洗牌算法” 证明打乱的效果如下: 

        随机交换nums/2次的效果很差,平均约1/3的对象还在原来的位置 
        随机交换nums次才基本可用,平均约15%的对象还在原来的位置 
        随机交换nums*2次才真正可用,平均约2%的对象还在原来的位置 
    */ 
      function shuffling() { 
        var array=[1,2,3,4,5,6,7,8,9,0];
        for (var j = 0; j < 2; j++) {
          for (var i = 0; i < 10; i++) { 
            var rand = Math.floor(Math.random()*10); 
            var temp = array[i]; 
            array[i] = array[rand]; 
            array[rand] = temp; 
          } 
        }
        return array; 
      } 
    }

    changeKeyboard();
    $("#keyboard").click(function(){
      changeKeyboard();
    });

  </script>


</body>
</html>

第二种方式,点击查看

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>内置sort方法dynamicKeyboard</title>
  <style>
    .s{color:red;}
    button{width:30px;height:30px; margin-top:5px;text-align: center;}
  </style>
</head>
<body>
  <div>
    <button id="s1" class="s"></button>
    <button id="s2" class="s"></button>
    <button id="s3" class="s"></button>
  <div>
  <div>
    <button id="s4" class="s"></button>
    <button id="s5" class="s"></button>
    <button id="s6" class="s"></button>
  <div>
  <div>
    <button id="s7" class="s"></button>
    <button id="s8" class="s"></button>
    <button id="s9" class="s"></button>
  <div>
  <div>
    <button id="sa" >K</button>
    <button id="s0" class="s"></button>
    <button id="sb" >C</button>
  <div>
  <p>
   <a href="javascript:void(0);" id="keyboard">点击刷新</a>
  </p>

  <script src="http://cdn.bootcss.com/jquery/1.11.3/jquery.min.js"></script>
  <script type="text/javascript">


    function changeKeyboard(){
      var arr=[1,2,3,4,5,6,7,8,9,0];
      arr.sort(function(){return Math.random()>0.5?-1:1;});
      var sp = $(".s");
      console.log(sp);
      for (var i = 0; i < sp.length; i++) {
        $(sp[i]).text(arr[i]);
      }
    }

    changeKeyboard();
    $("#keyboard").click(function(){
      changeKeyboard();
    });

  </script>


</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 三级关联菜单效果实例
Aug 13 Javascript
基于Arcgis for javascript实现百度地图ABCD marker的效果
Sep 12 Javascript
jQuery事件绑定用法详解
Sep 08 Javascript
canvas实现图像截取功能
Feb 06 Javascript
jQuery中 bind的用法简单介绍
Feb 13 Javascript
原生js实现瀑布流布局
Mar 08 Javascript
荐书|您有一份JavaScript书单待签收
Jul 21 Javascript
浅谈Vue初学之props的驼峰命名
Jul 19 Javascript
js module大战
Apr 19 Javascript
详解Vue-Router源码分析路由实现原理
May 15 Javascript
Vue学习之组件用法实例详解
Jan 06 Javascript
js之ajax文件上传
May 13 Javascript
JavaScript实现时间表动态效果
Jul 15 #Javascript
详解基于Node.js的微信JS-SDK后端接口实现代码
Jul 15 #Javascript
JavaScript实现三级联动效果
Jul 15 #Javascript
BackBone及其实例探究_动力节点Java学院整理
Jul 14 #Javascript
backbone简介_动力节点Java学院整理
Jul 14 #Javascript
bootstrap基本配置_动力节点Java学院整理
Jul 14 #Javascript
easyui简介_动力节点Java学院整理
Jul 14 #Javascript
You might like
收集的php编写大型网站问题集
2007/03/06 PHP
dvwa+xampp搭建显示乱码的问题及解决方案
2015/08/23 PHP
在JavaScript中实现命名空间
2006/11/23 Javascript
Highslide.js是一款基于js实现的网页中图片展示插件
2020/03/30 Javascript
javascript HTMLEncode HTMLDecode的完整实例(兼容ie和火狐)
2009/06/02 Javascript
javascript数字时钟示例分享
2014/04/23 Javascript
js简单抽奖代码
2015/01/16 Javascript
jquery滚动加载数据的方法
2015/03/09 Javascript
Bootstrap选项卡学习笔记分享
2017/02/13 Javascript
JavaScript实现打地鼠小游戏
2020/04/23 Javascript
JS中的数组转变成JSON格式字符串的方法
2017/05/09 Javascript
Node.js 异步异常的处理与domain模块解析
2017/05/10 Javascript
详解React 16 中的异常处理
2017/07/28 Javascript
vue中v-for加载本地静态图片方法
2018/03/03 Javascript
layui的table单击行勾选checkbox功能方法
2018/08/14 Javascript
详解JavaScript类型判断的四种方法
2020/10/21 Javascript
python中pass语句用法实例分析
2015/04/30 Python
Python使用Matplotlib实现雨点图动画效果的方法
2017/12/23 Python
解决python使用open打开文件中文乱码的问题
2017/12/29 Python
Python使用numpy产生正态分布随机数的向量或矩阵操作示例
2018/08/22 Python
python学生管理系统
2019/01/30 Python
Python中的正则表达式与JSON数据交换格式
2019/07/03 Python
解决python 读取 log日志的编码问题
2019/12/24 Python
PyCharm GUI界面开发和exe文件生成的实现
2020/03/04 Python
Python列表元素删除和remove()方法详解
2021/01/04 Python
SHEIN台湾:购买最新流行女装服饰
2019/05/18 全球购物
类和结构的区别
2012/08/15 面试题
专科毕业生求职简历的自我评价
2013/10/12 职场文书
致100米运动员广播稿
2014/02/14 职场文书
个人社会实践自我鉴定
2014/03/24 职场文书
安全检查汇报材料
2014/12/26 职场文书
高中家长意见怎么写
2015/06/03 职场文书
文明礼貌主题班会
2015/08/14 职场文书
2016年毕业实习心得体会范文
2015/10/09 职场文书
tensorflow中的梯度求解及梯度裁剪操作
2021/05/26 Python
SQL注入篇学习之盲注/宽字节注入
2022/03/03 MySQL