<!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 =
'<p 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 +=
"</p>"
;
document.write(str);
}
i
multiplication(9);
var
oSpans = document.getElementsByTagName(
"span"
);
for
(
var
i = 0; i < oSpans.length; i++) {
oSpans[i].onclick =
function
() {
alert(this.innerHTML +
" 我在第 "
+ this.innerHTML.charAt(4) +
" 行"
);
}
oSpans[i].onmouseover =
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.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>