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 相关文章推荐
JavaScript 入门基础知识 想学习js的朋友可以参考下
Dec 26 Javascript
JavaScript 学习笔记(七)字符串的连接
Dec 31 Javascript
基于Jquery的表格隔行换色,移动换色,点击换色插件
Dec 22 Javascript
整理一些JavaScript的IE和火狐的兼容性注意事项
Mar 17 Javascript
jQuery层次选择器选择元素使用介绍
Apr 18 Javascript
jQuery实现瀑布流布局详解(PC和移动端)
Sep 01 Javascript
jQuery无刷新上传之uploadify3.1简单使用
Jun 18 Javascript
Bootstrap CSS布局之表单
Dec 17 Javascript
js, jQuery实现全选、反选功能
Mar 08 Javascript
JavaScript校验Number(4,1)格式的数字实例代码
Mar 13 Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
Mar 07 Javascript
Vue Element plus使用方法梳理
Dec 24 Vue.js
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
如何选购合适的收音机
2021/03/01 无线电
php与php MySQL 之间的关系
2009/07/17 PHP
PHP中header和session_start前不能有输出原因分析
2013/01/11 PHP
php后门URL的防范
2013/11/12 PHP
php给每个段落添加空格的方法
2015/03/20 PHP
PHP常用的三种设计模式汇总
2016/08/28 PHP
在Laravel中使用MongoDB的方法示例
2019/11/11 PHP
添加JavaScript重载函数的辅助方法2
2010/07/04 Javascript
js获取键盘按键响应事件(兼容各浏览器)
2013/05/16 Javascript
Jquery 的outerHeight方法使用介绍
2013/09/11 Javascript
深入浅析JavaScript中数据共享和数据传递
2016/04/25 Javascript
Bootstrap基本组件学习笔记之导航(10)
2016/12/07 Javascript
浅谈Node.js:fs文件系统模块
2016/12/08 Javascript
NPM 安装cordova时警告:npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to
2016/12/20 Javascript
ES6学习笔记之正则表达式和字符串正则方法分析
2017/04/25 Javascript
JS基于封装函数实现的表格分页完整示例
2018/06/26 Javascript
Bootstrap Fileinput 4.4.7文件上传实例详解
2018/07/25 Javascript
详解小程序循环require之坑
2019/03/08 Javascript
ES6知识点整理之对象解构赋值应用示例
2019/04/17 Javascript
vue+webpack dev本地调试全局样式引用失效的解决方案
2019/11/12 Javascript
Vue组件基础用法详解
2020/02/05 Javascript
vscode+gulp轻松开发小程序的完整步骤
2020/10/18 Javascript
[02:53]2018年度DOTA2最佳战队-完美盛典
2018/12/17 DOTA
Python使用pymysql小技巧
2017/06/04 Python
Python开发SQLite3数据库相关操作详解【连接,查询,插入,更新,删除,关闭等】
2017/07/27 Python
python同时遍历数组的索引和值的实例
2018/11/15 Python
python算法与数据结构之单链表的实现代码
2019/06/27 Python
HTML5实现锚点时请使用id取代name
2013/09/06 HTML / CSS
生产厂厂长岗位职责
2013/12/25 职场文书
少年闰土教学反思
2014/02/22 职场文书
洗车工岗位职责
2014/03/15 职场文书
三年级学生评语
2014/04/23 职场文书
项目负责人任命书
2014/06/04 职场文书
整改落实情况汇报材料
2014/10/29 职场文书
2015年七一建党节活动方案
2015/05/05 职场文书
老乡会致辞
2015/07/28 职场文书