Closed Wscats closed 6 years ago
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>02利用函数计算阶乘</title>
<script>
// 延迟代码执行
// 页面加载事件onload
// 当页面上所有的内容加载完成后才执行函数中的代码
window.onload = function(){
/*
02利用函数计算阶乘
1)获取页面元素
2)根据输入的值计算阶乘
*/
function factorial(){
var output = document.getElementById('output');
// 获取页面元素的值
var num = document.getElementById('num').value;
var res = 1;
for(var i=2;i<=num;i++){
res *= i;
}
// 把计算的结果写入#output
output.innerHTML = res;
}
// 第一种执行函数的方式:手动执行
// factorial();
// 事件驱动
// 按钮.onclick = factorial;
var btnCalc = document.getElementById('btnCalc');
// console.log(btnCalc);
// 事件绑定
// 点击事件
btnCalc.onclick = factorial;
}
</script>
</head>
<body>
<input type="text" id="num">
<button id="btnCalc">计算阶乘</button>
<div id="output"></div>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>03常见事件触发函数</title>
<style>
#box{width:300px;height:80px;background-color:#ffc;border:1px solid #f90;}
</style>
<script>
window.onload = function(){
// 获取页面元素#box
var box = document.getElementById('box');
// 点击#box这个元素是执行
// 具名函数
function clickHandle(){
console.log('点击');
}
// 点击事件
box.onclick = clickHandle;
// 鼠标移入事件
// 匿名函数(没有名字函数)
box.onmouseover = function(){
console.log('移入事件');
}
}
</script>
</head>
<body>
<div id="box"></div>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>04打印表单内容</title>
<script>
window.onload = function(){
var name = document.getElementById('name');
var gender = document.getElementById('gender');
var psw = document.getElementById('psw');
var output = document.getElementById('output');
// 绑定事件
// 当change事件发生时才执行函数中的代码
// 当输入框的内容改变并且失去焦点时触发change事件
name.onchange = function(){
// 打印输入框的内容
// 如何获取输入框的内容?
console.log(name.value);
}
gender.onchange = function(){
console.log(gender.value);
}
// 监听密码输入
psw.onkeyup = function(){
output.innerHTML = psw.value;
}
}
</script>
</head>
<body>
<input type="text" id="name">
<input type="password" id="psw">
<select name="gender" id="gender">
<option value="男">男</option>
<option value="女">女</option>
<option value="保密">保密</option>
</select>
<div id="output"></div>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>05利用函数封装99乘法表</title>
<style>
span{display: inline-block;padding:0 5px;margin:5px;width:60px;line-height:2;background-color: #efefef;text-align:center;}
</style>
<script>
window.onload = function(){
var btnShow = document.getElementById('btnShow');
var output = document.getElementById('output');
btnShow.onclick = function(){
// 字符串拼接
var str = '';
// 外层循环控制行
for(var i=1;i<=9;i++){
// 内层循环控制列
for(var j=1;j<=i;j++){
str += '<span>' + j + '×' + i + '=' + i*j +'</span>';
}
str += '<br/>';
}
// console.log(str);
output.innerHTML = str;
}
}
</script>
</head>
<body>
<button id="btnShow">显示99乘法表</button>
<div id="output"></div>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>06封装加减乘除</title>
<script>
window.onload = function(){
// 这里的代码在页面加载完成后执行
// 获取页面元素
var num1 = document.getElementById('num1');
var num2 = document.getElementById('num2');
var ysf = document.getElementById('ysf');
var btnCalc = document.getElementById('btnCalc');
var output = document.getElementById('output');
// 绑定点击事件
btnCalc.onclick = function(){
// 点击按钮的时候执行
var _num1 = Number(num1.value);
var _num2 = Number(num2.value);
var _ysf = ysf.value;
console.log(_ysf);
// 根据运算符的值进行相应的运算
switch(_ysf){
case '+':
output.innerHTML = _num1 + _num2;
break;
case '-':
output.innerHTML = _num1 - _num2;
break;
case 'x':
output.innerHTML = _num1 * _num2;
break;
case '/':
output.innerHTML = _num1 / _num2;
break;
case '%':
output.innerHTML = _num1 % _num2;
break;
}
}
}
</script>
</head>
<body>
<input type="text" id="num1">
<select id="ysf">
<option value="+">+</option>
<option value="-">-</option>
<option value="x">×</option>
<option value="/">/</option>
<option value="%">%</option>
</select>
<input type="text" id="num2">
<button id="btnCalc">计算</button>
<div id="output"></div>
</body>
</html>
01函数的声明方式