BOM事件 定时器的使用 元素获取的方法 计算器,数组对象表格在网页显示

BOM事件

1.onload事件 会在页面全部加载完之后才会执行

		window.onload = function(){
			console.log("页面全部加载完才执行");
		}
		console.log("页面还在加载");

2.resize 事件

		window.onresize = function(){
			console.log("页面尺寸发生了改变");
		} 

3.scroll事件

		window.onscroll = function(){
			console.log("滚轮改变了");
		} 

4.获取页面尺寸

		console.log(window.innerWidth);
		console.log(window.innerHeight);
定时器

setInterval 是一个定时器功能,能够按照时间间隔执行代码

	  console.log("1");
		console.log("2");
		var timer = setInterval(function(){
			console.log("3");
		},100);
		console.log("4");
		console.log("5");
		clearInterval(timer);//清楚定时器
		

		console.log("1");
		console.log("2");
		var timer1 = setTimeout(function(){
			console.log("3");
		},100);
		console.log("4");
		console.log("5");
		clearTimeout(timer1);//清楚延时器

		for(var i = 0;i<10;i++){
			setTimeout(function(){
				console.log(i);
			},0);
		}

eg:
下面的代码延时器后执行,先执行所有的i++
i=10时结束,然后执行延时器,都为10

		for(var i=0;i<10;i++){
			setTimeout(function() {
				console.log(i);
			}, 0);
		}
元素获取的方法(一二种方法常用)

1。根据ID获取元素 getElementById

		var box = document.getElementById("box"); //div id="box"
		var box1 = document.getElementById("box1");//null

2.根据标签名获取元素集合,集合里面的才是元素 getElementsByTagName

		var lis = document.getElementsByTagName("li");

3.getElementdByName 根据name属性值 获取元素集合 集合里面的才是元素 注:该方法不兼容

		var username = document.getElementsByName("username");

4.getElementsByClassName 根据类名获取集合 ,集合里面的才是元素 注:该方法不兼容

		var className = document.getElementsByClassName("a")[0];

5.querySelector 根据选择器找到一个元素

		var box2= document.querySelector("#box");

6.querySelectorAll 根据选择器找到一个元素集合

		var divs = document.querySelectorAll("div");			

定时器的题目
页面中有两个按钮 当点击第一个时 开始输出内容 点击第二个时 停止输出 这个过程可以重复附加: 当多次点击第一个按钮时 仍旧每一次只有一次输出

<button id="but1">按钮一</button>
	<button id="but2">按钮二</button>
<script>
		var but1 = document.getElementById("but1");
		var but2 = document.getElementById("but2");
		var timer;
		but1.onclick = function (){
			clearInterval(timer);  //函数节流,防止点击第一个按钮越点越快,在点击第二个按钮时不再停止
			timer = setInterval(function(){
				console.log("点击了按钮一");
			},1000)
		}
		but2.onclick = function(){
			clearInterval(timer);
		}
	</script>

网页简易计算器的实现

<table>
		<tr>
			<th>运算符1</th>
			<th>运算符号</th>
			<th>运算数2</th>
			<th>等号</th>
			<th>结果</th>
		</tr>
		<tr>
			<th><input name="num1" /></th>
			<th>+</th>
			<th><input name="num2" /></th>
			<th>=</th>
			<th><input name="result" /></th>
		</tr>
		<tr>
			<th><input name="num1" /></th>
			<th>-</th>
			<th><input name="num2" /></th>
			<th>=</th>
			<th><input name="result" /></th>
		</tr>
		<tr>
			<th><input name="num1" /></th>
			<th>*</th>
			<th><input name="num2" /></th>
			<th>=</th>
			<th><input name="result" /></th>
		</tr>
		<tr>
			<th><input name="num1" /></th>
			<th>/</th>
			<th><input name="num2" /></th>
			<th>=</th>
			<th><input name="result" /></th>
		</tr>
	</table>
	<button id="btn">运算</button>
	<script>
		var num1s = document.getElementsByName("num1");
		var num2s = document.getElementsByName("num2");
		var results = document.getElementsByName("result");
		var btns = document.getElementById("btn");
		
		//给每个num绑定事件
		for(var i=0;i<num1s.length;i++){
			num1s[i].oninput = function(){
				var val= this.value;
				for(var i=0;i<num1s.length;i++){
					num1s[i].value = val;
				}
			}
		}
		for(var i=0;i<num2s.length;i++){
			num2s[i].oninput = function(){
				var val2= this.value;
				for(var i=0;i<num2s.length;i++){
					num2s[i].value = val2;
				}
			}
		}
		
		btns.onclick = function(){
			results[0].value = +num1s[0].value + +num2s[0].value;
			results[1].value = num1s[1].value - num2s[1].value;
			results[2].value = num1s[2].value * num2s[2].value;
			results[3].value = num1s[3].value / num2s[3].value;
		}
	</script>

数组对象表格在网页显示

		<table>
			<thead>
				<tr>
					<th>姓名</th>
					<th>年龄</th>
					<th>性别</th>
				</tr>
			</thead>
			<tbody class="box">
				
			</tbody>
	</table>
	<script>
		var box = document.getElementsByClassName("box")[0];
		var arr = [
		    {
		    name: 'Jack',
		    age: 18,
		    gender: '男'
		    },
		    {
		    name: 'Rose',
		    age: 20,
		    gender: '女'
		    },
		    {
		    name: 'Top',
		    age: 22,
		    gender: '男'
		    }
		]
		for(var i = 0;i<arr.length;i++){
			box.innerHTML +="<tr><td>" + arr[i].name + "</td><td>" + arr[i].age +  "</td><td>" + arr[i].gender +  "</td></tr>";	
		}
	</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值