js实现华丽的九九乘法表效果


Posted in Javascript onMarch 29, 2017

效果图:

js实现华丽的九九乘法表效果

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>span实现的乘法表</title>
 <style type="text/css">
  .wrap {
   width: 800px;
   margin: 20px auto;
   -webkit-user-select: none;
   -moz-user-select: none;
   -ms-user-select: none;
   user-select: none;
  }

  span {
   padding: 3px;
   font-weight: 700;
   display: inline-block;
   line-height: 30px;
   border-bottom: 2px solid #000000;
   border-left: 2px solid #000000;
   width: 80px;
   cursor: pointer;
  }
  .last {
   margin-top: -2px;
   border-top: 2px solid #000000;
   border-right: 2px solid #000000;
  }

  .bg0 {
   background-color: yellow;
  }

  .bg1 {
   background-color: lawngreen;
  }

  .bg2 {
   background-color: lightblue;
  }

  .hover {
   background-color: #BB3BD9;
  }
  .only{
   background-color: lightsalmon;
  }
 </style>
</head>
<body>
<script>
 function multiplication(a) {
  var str = '<div class="wrap">';
  for (var i = 1; i <= a; i++) {
   for (var j = 1; j <= i; j++) {
    var curstr = j + ' x ' + i + '= ' + i * j;
    j !== i ? str += '<span class="' + 'bg' + (i % 3) + '">' + curstr + '</span>' : str += '<span class="' + 'last bg' + (i % 3) + '">' + curstr + '</span><br/>';
   }
  }
  str += "</div>";
  document.write(str);
 }
 i

 multiplication(9);

 var oSpans = document.getElementsByTagName("span");
 for (var i = 0; i < oSpans.length; i++) {
  oSpans[i].onclick = function () {
   //alert("我是第 "+parseInt(this.innerHTML)+" 行");
   alert(this.innerHTML + " 我在第 " + this.innerHTML.charAt(4) + " 行");
  }
  oSpans[i].onmouseover = function () {
   //console.log(111);
   var num = this.innerHTML.charAt(4);
   //console.log(num);
   for (var j = 0; j < oSpans.length; j++) {
    if (oSpans[j].innerHTML.charAt(4) === num) {
     oSpans[j].classList.add("hover");
    }
   }
   this.classList.add("only");
  }
  oSpans[i].onmouseout = function () {
   var num = this.innerHTML.charAt(4);
   for (var j = 0; j < oSpans.length; j++) {
    if (oSpans[j].innerHTML.charAt(4) === num) {
     oSpans[j].classList.remove("hover");
    }
   }
   this.classList.remove("only");
  }
 }
</script>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
通过event对象的fromElement属性解决热区设置主实体的一个bug
Dec 22 Javascript
浅析Js中的单引号与双引号问题
Nov 06 Javascript
node.js中使用q.js实现api的promise化
Sep 17 Javascript
JavaScript 学习笔记之语句
Jan 14 Javascript
jQuery插件slick实现响应式移动端幻灯片图片切换特效
Apr 12 Javascript
jQuery实现转动随机数抽奖效果的方法
May 21 Javascript
认识jQuery的Promise的具体使用方法
Oct 10 jQuery
利用Console来Debug的10个高级技巧汇总
Mar 26 Javascript
vue-router权限控制(简单方式)
Oct 29 Javascript
vue 实现一个简单的全局调用弹窗案例
Sep 10 Javascript
手写Vue2.0 数据劫持的示例
Mar 04 Vue.js
cypress测试本地web应用
Jun 01 Javascript
JS简单获取当前日期时间的方法(如:2017-03-29 11:41:10 星期四)
Mar 29 #Javascript
微信小程序实现带刻度尺滑块功能
Mar 29 #Javascript
Javascript 详解封装from表单数据为json串进行ajax提交
Mar 29 #Javascript
详解如何在Vue2中实现组件props双向绑定
Mar 29 #Javascript
整理关于Bootstrap警示框的慕课笔记
Mar 29 #Javascript
node.js程序作为服务并在windows下开机自启动(用forever)
Mar 29 #Javascript
jQuery实现字体颜色渐变效果的方法
Mar 29 #jQuery
You might like
php生成二维码时出现中文乱码的解决方法
2014/12/18 PHP
php随机抽奖实例分析
2015/03/04 PHP
PHP实现的回溯算法示例
2017/08/15 PHP
Yii框架应用组件用法实例分析
2020/05/15 PHP
javascript parseInt与Number函数的区别
2010/01/21 Javascript
jquery 表格分页等操作实现代码(pagedown,pageup)
2010/04/11 Javascript
超级24小时弹窗代码 24小时退出弹窗代码 100%弹窗代码(IE only)
2010/06/11 Javascript
如何获取网站icon有哪些可行的方法
2014/06/05 Javascript
jQuery简单实现提交数据出现loading进度条的方法
2016/03/29 Javascript
jquery设置表单元素为不可用的简单代码
2016/07/04 Javascript
简单谈谈Javascript函数中的arguments
2017/02/09 Javascript
WebPack配置vue多页面的技巧
2018/05/15 Javascript
node.js的Express服务器基本使用教程
2019/01/09 Javascript
Vue实现base64编码图片间的切换功能
2019/12/04 Javascript
JS实现星星海特效
2019/12/24 Javascript
js实现简易计算器小功能
2020/11/18 Javascript
Python简单获取自身外网IP的方法
2016/09/18 Python
详解python使用Nginx和uWSGI来运行Python应用
2018/01/09 Python
Python数据分析之双色球中蓝红球分析统计示例
2018/02/03 Python
Python3爬虫mitmproxy的安装步骤
2020/07/29 Python
python实现企业微信定时发送文本消息的实例代码
2020/11/25 Python
python通用数据库操作工具 pydbclib的使用简介
2020/12/21 Python
python实现文件+参数发送request的实例代码
2021/01/05 Python
html如何对span设置宽度
2019/10/30 HTML / CSS
Canvas获取视频第一帧缩略图的实现
2020/11/11 HTML / CSS
英国手机壳购买网站:Case Hut
2019/04/11 全球购物
技校毕业生自荐信
2014/06/03 职场文书
2014国庆节标语口号
2014/09/19 职场文书
查摆问题整改措施
2014/10/24 职场文书
党的群众路线教育实践活动个人对照检查材料(乡镇)
2014/11/05 职场文书
保密工作整改报告
2014/11/06 职场文书
2015年学生会纪检部工作总结
2015/03/31 职场文书
2016年猴年新春致辞
2015/08/01 职场文书
实习报告怎么写
2019/06/20 职场文书
600字作文之感受大自然
2019/11/27 职场文书
Mysql MVCC机制原理详解
2021/04/20 MySQL