javascript(js与css交互)

<table border="1" cellpadding="0" cellspacing="0" width="60%" >
			<tr>
				<td><input id="all" type="checkbox">全选</td>
				<td><input onclick="myCheck(this,'01',4,6);" type="checkbox">1月</td>
				<td><input onclick="myCheck(this,'02',4,6);" type="checkbox">2月</td>
				<td><input onclick="myCheck(this,'03',4,6);" type="checkbox">3月</td>
				<td><input onclick="myCheck(this,'04',4,6);" type="checkbox">4月</td>
				<td><input onclick="myCheck(this,'05',4,6);" type="checkbox">5月</td>
				<td><input onclick="myCheck(this,'06',4,6);" type="checkbox">6月</td>
			</tr>
			<tr>
				<td><input onclick="myCheck(this,'2008',0,4)" type="checkbox">2008年</td>
				<td><input type="checkbox" value="200801"></td>
				<td><input type="checkbox" value="200802"></td>
				<td><input type="checkbox" value="200803"></td>
				<td><input type="checkbox" value="200804"></td>
				<td><input type="checkbox" value="200805"></td>
				<td><input type="checkbox" value="200806"></td>
			</tr>
			<tr>
				<td><input onclick="myCheck(this,'2007',0,4)" type="checkbox">2007</td>
				<td><input type="checkbox" value="200701"></td>
				<td><input type="checkbox" value="200702"></td>
				<td><input type="checkbox" value="200703"></td>
				<td><input type="checkbox" value="200704"></td>
				<td><input type="checkbox" value="200705"></td>
				<td><input type="checkbox" value="200706"></td>
			</tr>
		</table>
		
		<script type="text/javascript">
			function $(id){
				return document.getElementById(id);
			}
			// 实现全选  |全不选
			$("all").onclick = function(){
				var checks = document.querySelectorAll('input');
				//遍历
				for(var i = 1;i<checks.length;i++){
					checks[i].checked = this.checked;
				}
			};
			
			// 1月  点击事件
			// myCheck
			function myCheck(obj,m,start,end){
				// 获取所有的input复选框
				var inputs = document.querySelectorAll("input");
				//筛选  获取到value值后如果都是以01结尾的  都是属于每个年份的1月份
				for(var i = 0;i<inputs.length;i++){
					// console.log(inputs[i].value);
					// substring substr  200801
					var month = inputs[i].value.substring(start,end);
					// console.log(month);
					if(month === m){
						// console.log(inputs[i])
						inputs[i].checked = obj.checked;
					}
				}
			
			}
			
		</script>
		
		
		<!-- js -->
		<script type="text/javascript">
			var result = "akjshdjaasd";
			// 从第二个位置开始截取,截取后面四位数
			console.log(result.substr(2,4));
			// 从第二个位置开始截取,截取到下标为4结束
			console.log(result.substring(2,4));
		</script>

表格对象的增删改查

<table border="1" cellpadding="0" cellspacing="0" width="80%">
			<tr>
				<th>全选 <input type="checkbox"></th>
				<th>商品名称</th>
				<th>商品价格</th>
				<th>商品数量</th>
				<th>操作</th>
			</tr>
			<tr id="1">
				<td><input name='sb' type="checkbox" value='1'></td>
				<td>麻辣小王子</td>
				<td>100</td>
				<td>200</td>
				<td>
					<button onclick="mydel('1')">删除</button>
					<button onclick="myEdit('1')">修改</button>
				</td>
			</tr>
			<tr>
				<td colspan="5">
					<button onclick="plDel();">删除所选</button>
					<button onclick="addOrder();">新增订单</button>
				</td>
			</tr>
		</table>

		<script type="text/javascript">
			//新增订单的点击事件
			/*
				1.获取表格对象
				2.获取指定的位置(tr的下标)
				3.调用insertRow(index);
			*/
			function addOrder() {
				// 获取表格对象
				var table = document.querySelector("table");
				// 获取指定的位置下标
				var length = table.rows.length - 1;
				// 调用新增tr的方法并且会将tr对象返回
				var tr = table.insertRow(length);
				tr.id = length;
				// 第1个单元格
				var td1 = tr.insertCell(0);
				td1.innerHTML = "<input name = 'sb' type = 'checkbox' value = '" + tr.id + "'/>"
				// 第2个单元格
				var td2 = tr.insertCell(1);
				td2.innerHTML = "<input type = 'text' style = 'width:100px'>";
				// 第3个单元格
				var td3 = tr.insertCell(2);
				td3.innerHTML = "<input type = 'text' style = 'width:50px'>";
				// 第4个单元格
				var td4 = tr.insertCell(3);
				td4.innerHTML = "<input type = 'text' style = 'width:50px'>";
				// 第5个单元格
				var td5 = tr.insertCell(4);
				td5.innerHTML = "<button onclick = 'mydel(\"" + tr.id + "\")'>删除</button> <button onclick = 'myConfirm(\"" + tr
					.id + "\")'>确认</button>";
			}

			// 确认事件
			function myConfirm(id) {
				// console.log(typeof(id));
				//根据参数id获取当前所点击的tr
				var tr = document.getElementById(id);
				// console.log(tr);
				// 获取第2个单元格中的输入项中的value属性
				var gname = tr.cells[1].lastElementChild.value;
				// 获取第3个单元格中的输入项中的value属性
				var gprice = tr.cells[2].lastElementChild.value;
				// 获取第4个单元格中的输入项中的value属性
				var gcount = tr.cells[3].lastElementChild.value;
				//将获取的结果重新赋值到每一个单元格的文本内容中
				tr.cells[1].innerHTML = gname;
				tr.cells[2].innerHTML = gprice;
				tr.cells[3].innerHTML = gcount;

				//将确认按钮改变内容以及事件监听
				var confirmbtn = tr.cells[4].lastElementChild;
				confirmbtn.innerHTML = "修改";
				confirmbtn.setAttribute("onclick", "myEdit('" + id + "')");
			}

			// 修改事件
			function myEdit(id) {
				//根据参数id获取当前所点击的tr
				var tr = document.getElementById(id);
				// 名称
				var gname = tr.cells[1].innerHTML;
				// 价格
				var gprice = tr.cells[2].innerHTML;
				// 名称
				var gcount = tr.cells[3].innerHTML;
				// 将内容设置到每个单元格中输入项中
				tr.cells[1].innerHTML = "<input type = 'text' value = '" + gname + "' style = 'width:100px'>";
				tr.cells[2].innerHTML = "<input type = 'text' value = '" + gprice + "' style = 'width:50px'>";
				tr.cells[3].innerHTML = "<input type = 'text' value = '" + gcount + "' style = 'width:50px'>";

				//将修改的按钮的内容以及事件监听
				var editbtn = tr.cells[4].lastElementChild;
				editbtn.innerHTML = '确认';
				editbtn.setAttribute("onclick", "myConfirm('" + id + "')")
			}

			// 删除的点击事件
			function mydel(id) {
				//根据参数id获取当前所点击的tr
				var tr = document.getElementById(id);
				// 获取改行对应的下标
				var index = tr.rowIndex;
				//获取表格对象
				var table = document.querySelector("table");
				// 调用deleteRow
				table.deleteRow(index);
			}


			// 批量删除
			function plDel() {
				// 获取除了全选的所有子复选框
				var inputs = document.getElementsByName('sb');
				// console.log(inputs);
				for (var i = 0; i < inputs.length; i++) {
					if (inputs[i].checked == true) {
						// console.log(inputs[i]);
						// console.log(inputs[i].value);
						// 调用删除单个的方法
						mydel(inputs[i].value);
						// 删除一个后  循环的次数需要减少一次
						i--;
					}
				}
			}
		</script>

鼠标触碰事件

<style type="text/css">
			img{width: 100px;height: 100px; border: 3px solid red;}
			
			.over{border: 3px solid yellow;}
			.out{border: 3px solid red;}
			
			.oBox{
				width: 100%;
				height: 40px;
				
			}
			*{
				margin: 0px;padding: 0px;list-style: none;
			}
			.oBox ul li{float: left;}
			.oBox ul li a{
				display: inline-block;
				width: 100px;
				border: 1px solid red;
				text-align: center;
				text-decoration: none;
				color: black;
				background-color: skyblue;
			}
			
			.oBox ul li .over1{
				background-color: red;
				color: blue;
			}
			.oBox ul li .out1{
				background-color: bisque;
				color: blue;
			}
			
			/* 纯css手法 设置鼠标触碰 */
			/* .oBox ul li a:hover{
				background-color: yellow;
				color: red;
			} */
		</style>
		<script type="text/javascript">
			// js与css的交互
			// css样式:选择器(ID,class,标签)|属性(字体,边框,背景,列表等)
			// 通过js的手段去设置标签的css样式
			// 1.通过style对象设置样式,获取(行内式)
			// 2.通过className属性设置嵌入式class样式
			
			// style对象手段
			window.onload = function(){
				//获取所有的img
				var oImgs = document.querySelectorAll('img');
				//遍历
				for(var i = 0;i<oImgs.length;i++){
					oImgs[i].setAttribute("index",i);
					// 设置点击触碰事件
					oImgs[i].onmouseover = function(){
						// this.style.border = "3px solid blue";
						
						// oImgs[this.getAttribute('index')].className = "over";
					
						this.className = "over";
					};
					oImgs[i].onmouseout = function(){
						// this.style.border = "3px solid red";
						
						oImgs[this.getAttribute('index')].className = "out";
					};
				}
			};
			
		</script>
	</head>
	<body>
		<img src="img/1.jpg" alt="">
		<img src="img/2.jpg" alt="">
		<img src="img/3.jpg" alt="">
		<img src="img/4.jpg" alt="">
		
		
		<hr>
		<div class="oBox">
			<ul>
				<li><a href="">恐怖</a></li>
				<li><a href="">言情</a></li>
				<li><a href="">青春</a></li>
				<li><a href="">校园</a></li>
				<li><a href="">穿越</a></li>
			</ul>
		</div>
		<script type="text/javascript">
			var as = document.querySelectorAll('a');
			// console.log(as)
			for(var i = 0;i<as.length;i++){
				as[i].onmouseover = function(){
					console.log(1)
					this.className = "over1";
					// this.style.backgroundColor = 'red'
				};
				as[i].onmouseout = function(){
					console.log(1)
					this.className = "out1";
					// this.style.backgroundColor = 'red'
				};
			}
		</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值