22、继续javascript,左边选中的跳到右边
1、
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table>
<tr>
<td><select name="select1" multiple="multiple" id="first"
size="10">
<option>选项一</option>
<option>选项二</option>
<option>选项三</option>
<option>选项四</option>
<option>选项五</option>
<option>选项六</option>
</select></td>
<td><input type="button" value="=>" id="moveRS"> <input
type="button" value="==>" id="moveRA"> <input type="button"
value="<=" id="moveLS"> <input type="button" value="<=="
id="moveLA"></td>
<td><select name="select2" multiple="multiple" id="second"
size="10"> </select></td>
</tr>
</table>
</body>
<script type="text/javascript">
document.getElementById("moveRS").onclick = function() {
var select1 = document.getElementById("first");
var select2 = document.getElementById("second");
var options = select1.options;
for (var i = 0; i < options.length; i++) {
if (options[i].selected) {
select2.appendChild(options[i]);
i--;
}
}
}
document.getElementById("moveRA").onclick = function() {
var select1 = document.getElementById("first");
var select2 = document.getElementById("second");
var options = select1.options;
for (var i = 0; i < options.length; i++) { select2.appendChild(options[i]);
i--; }
}
document.getElementById("moveLS").onclick = function() {
var select1 = document.getElementById("second");
var select2 = document.getElementById("first");
var options = select1.options;
for (var i = 0; i < options.length; i++) {
if (options[i].selected) {
select2.appendChild(options[i]);
i--;
}
}
}
document.getElementById("moveLA").onclick = function() {
var select1 = document.getElementById("second");
var select2 = document.getElementById("first");
var options = select1.options;
for (var i = 0; i < options.length; i++) { select2.appendChild(options[i]);
i--; }
}
</script>
</html>
2、计时器,开始和结束
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<style type="text/css">
input {
width: 400px;
}
</style>
</head>
<body>
<input type="text" id="two">
<br />
<input type="button" value="开始" onclick="setTime()">
<input type="button" value="结束" onclick="endTime()">
<script type="text/javascript">
var id;
function setTime() {
if (!id)
getTime();
}
function getTime() {
//获得input输入框
var two = document.getElementById("two");
//创建出当前时间的Date对象
var date = new Date();
//将时间添加到input中
two.value = date.toLocaleString();
//ID=调用自己的setTimeout(getTime,1000)
id=setTimeout(getTime, 1000);
}
function endTime() {
clearTimeout(id);
id = undefined;
}
</script>
</body>
</html>
3、使用xml对dom对象进行操作
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="text/css">
#one {
background-color: yellow;
width: 300px;
height: 200px;
} #two {
background-color: blue;
width: 300px;
height: 200px;
} #three {
background-color: green;
width: 300px;
height: 200px;
} #four {
background-color: purple;
width: 300px;
height: 200px;
}
</style>
<script type="text/javascript">
//创建一个节点
function createNode() {
var div_1 = document.getElementById("one");
var child = document.createElement("a");
child.setAttribute("href", "http://www.baidu.com");
child.innerHTML = "www.baidu.com";
div_1.appendChild(child);
}
//删除一个div
function deleteNode() {
var div_2 = document.getElementById("two");
var parent = div_2.parentNode;
parent.removeChild(div_2);
}
//将div替换成图片
function updateNode() {
var div_3 = document.getElementById("three");
var parent = div_3.parentNode;
var img = document.createElement("img");
img.setAttribute("src", "2.jpg");
parent.replaceChild(img, div_3);
}
//复制div,并将复制后的div添加到末尾
function copyNode() {
var div_4 = document.getElementById("four");
var cloneDiv = div_4.cloneNode(true);
//true表示如果div中又子节点,那么连子节点也一起复制
//如果是false表示只复制div不复制子节点
var parent = div_4.parentNode;
parent.appendChild(cloneDiv);
}
</script>
</head>
<body>
<div id="one">div1</div>
<br />
<div id="two">div2</div>
<br />
<div id="three">div3</div>
<br />
<div id="four">div4</div>
<br />
<hr>
<input type="button" value="增加div中的元素" onclick="createNode()">
<input type="button" value="删除div" onclick="deleteNode()">
<input type="button" value="修改div中的元素" onclick="updateNode()">
<input type="button" value="复制div" onclick="copyNode()">
</body>
</html>
4、牛逼的表达验证,为什么JS这么这么牛逼呀!
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="text/css">
table, td {
border: 1px solid blue;
}
</style>
</head>
<body>
<form name="form1" onsubmit="return check()">
<table>
<tr>
<th colspan="2">表单提交</th> </tr>
<tr>
<td>用户名</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>密码</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td>年龄</td>
<td><input type="text" name="age"></td>
</tr>
<tr>
<td>性别</td>
<td><input type="radio" value="1" name="sex">男 <input
type="radio" value="0" name="sex">女</td>
</tr>
<tr>
<td>爱好</td>
<td><input type="checkbox" value="吃饭" name="habit">吃饭 <input
type="checkbox" value="睡觉" name="habit">睡觉 <input
type="checkbox" value="打豆豆" name="habit">打豆豆</td>
</tr>
<tr>
<td>学历</td>
<td><select name="edu">
<option>---请选择学历----</option>
<option>小学</option>
<option>初中</option>
<option>高中</option>
<option>大学</option>
</select></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="提交"></td>
</tr>
</table>
</form>
</body>
<script type="text/javascript">
function check() {
var a = true;
a = (checkUserName() & checkEdu() & checkPassword() & checkAge())
return a ? true : false;
}
//验证用户名
function checkUserName() {
var username = document.form1.username.value;
var regex = /^[a-zA-Z][a-zA-Z_0-9]{2,9}$/;
if (regex.test(username)) {
removeError(document.form1.username);
return true;
} else {
addError(document.form1.username, "用户名只能以字母开头");
return false;
}
}
//验证密码
function checkPassword() {
var password = document.form1.password.value;
var regex = /^.{6,10}$/;
if (regex.test(password)) {
removeError(document.form1.password);
return true;
} else {
addError(document.form1.password, "请输入6-10位的密码")
return false;
}
}
//验证年龄
function checkAge() {
var age = document.form1.age.value;
var regex = /^\d{1,3}$/;
if (regex.test(age)) {
removeError(document.form1.age);
return true;
} else {
addError(document.form1.age, "年龄输入的不对");
return false;
}
}
//验证学历
function checkEdu() {
var edu = document.form1.edu;
if (edu.selectedIndex) {
removeError(edu);
return true;
} else {
addError(edu, "请选择学历");
return false;
}
} //添加错误提示标记
function addError(where, what) {
if (where.parentNode.getElementsByTagName("font")[0]) {
return;
}
var font = document.createElement("font");
font.setAttribute("color", "red");
font.innerHTML = what;
where.parentNode.appendChild(font);
}
//删除错误标记
function removeError(where) {
var font = where.parentNode.getElementsByTagName("font")[0];
if (font) {
font.parentNode.removeChild(font);
}
}
</script>
</html>
5、对表格中的元素进行排序
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<style type="text/css">
table,tr,td {
border: 1px solid blue;
}
</style>
<script type="text/javascript">
function dataSort() {
//1获得表格中所有的行
var table = document.getElementsByTagName("table")[0];
var rows = table.rows;
//2创建一个新的数组,将需要排序的行装入
var arr = [];
for ( var i = 1; i < rows.length; i++) {
arr[i - 1] = rows[i];
}
//3对新的数组排序
arr.sort(abc);
//4排序好的数组遍历插回表格中
for ( var i = 0; i < arr.length; i++) {
table.appendChild(arr[i]);
}
}
function abc(a, b) {
return +a.cells[1].innerHTML - b.cells[1].innerHTML;
}
</script>
</head>
<body>
<table>
<tr>
<td>姓名</td>
<td><a href="javascript:void(0)" onclick="dataSort()">年龄</a></td>
<td>电话</td>
</tr>
<tr>
<td>王金鉴</td>
<td>11</td>
<td>18341893452</td>
</tr>
<tr>
<td>冯旭</td>
<td>12</td>
<td>18341893453</td>
</tr>
<tr>
<td>李俊峰</td>
<td>15</td>
<td>18341893373</td>
</tr>
<tr>
<td>赵维真</td>
<td>22</td>
<td>18341893451</td>
</tr>
<tr>
<td>孟凯妮</td>
<td>20</td>
<td>18341893476</td>
</tr>
<tr>
<td>邓一鸣</td>
<td>19</td>
<td>18341893321</td>
</tr>
</table>
</body>
</html>
6、二级联动
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title> </head>
<body>
<select id="province">
<option>----请选择省----</option>
</select>
<select id="city">
<option>----请选择市----</option>
</select>
</body>
<script type="text/javascript">
var json = {
"辽宁省" : [ "大连市", "阜新市", "沈阳市", "盘锦市", "营口市" ],
"吉林省" : [ "长春市", "吉林市", "四平市" ]
};
//遍历josn中的所有key,把key封装到option对象当中,把option对象添加到省的select中去
//1获得省的select对象
//2遍历json中的所有key
//3key封装到option对象中
//添加
var province = document.getElementById("province");
var city = document.getElementById("city");
for ( var Key in json) {
var option = document.createElement("option");
option.innerHTML = Key;
province.appendChild(option);
}
//为province添加onchange事件
province.onchange = function() {
//每次联动的时候需要清除city select中的数据
city.options.length = 1;
//1.获得用户选择的省
var provinceKey = this.options[this.selectedIndex].innerHTML;
//2.将选择的省去json中取得对应的市数组
var cities = json[provinceKey];
//3.遍历数组中的所有市,封装到option对象中
for (var i = 0; i < cities.length; i++) {
var option = document.createElement("option");
//4、将option添加到city中
option.innerHTML = cities[i];
city.appendChild(option);
} }
</script>
</html>
7、隔行变色
为什么我们这么牛逼什么玩意都会做,也是日了狗了
8、跨页面通讯,为什么我们这么牛逼,
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<frameset rows="30%,70%">
<frame src="top.html" />
<frameset cols="30%,*">
<frame src="left.html"/>
<frame src="main.html"/>
</frameset>
</frameset>
</html> 下边是top.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>标签页</h1>
</body>
</html> 下边是left.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function check() {
var tr = document.createElement("tr");
var name = document.form1.name.value;
var age = document.form1.age.value;
var sex = document.form1.sex.value;
tr.innerHTML = "<td>" + name + "</td><td>" + age + "</td><td>" + sex
+ "</td>"
window.parent.frames[2].document.getElementsByTagName("table")[0]
.appendChild(tr);
}
</script>
</head>
<body>
<form name="form1" onsubmit="check()">
姓名:<input type="text" name="name"><br /> 年龄:<input
type="text" name="age"><br /> 性别:<input type="text"
name="sex"><input type="button" value="选择"
onclick="window.open('select.html')"> <input type="submit"
value="提交">
</form>
</body>
</html>
下边是main.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table>
<tr>
<td>姓名</td>
<td><a href="javascript:void(0)" onclick="dataSort()">年龄</a></td>
<td>性别</td>
</tr>
<tr>
<td>王金鉴</td>
<td>11</td>
<td>男</td>
</tr>
<tr>
<td>冯旭</td>
<td>12</td>
<td>男</td>
</tr>
<tr>
<td>李俊峰</td>
<td>15</td>
<td>男</td>
</tr>
<tr>
<td>赵维真</td>
<td>22</td>
<td>男</td>
</tr>
<tr>
<td>孟凯妮</td>
<td>20</td>
<td>女</td>
</tr>
<tr>
<td>邓一鸣</td>
<td>19</td>
<td>男</td>
</tr>
</table>
</body>
</html>
9、流氓广告,鼠标走到哪里,广告就跟到哪里
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="text/css">
div {
border: 1px solid red;
} #one {
width: 400px;
height: 400px;
} #two {
background-color: pink;
width: 50px;
height: 50px;
}
</style>
</head>
<body>
<div id="one">
<a href="隔行变色.html">这里有你想看的内容</a> <a href="selectMove.html">体育老师视频</a>
</div>
<div id="two">
<a href="formAdd.html" target="_blank" onclick="remove(this)">流氓广告</a>
</div>
</body>
<script type="text/javascript">
document.getElementById("one").onmousemove = function(event) {
var x = event.clientX;
var y = event.clientY;
var div2 = document.getElementById("two");
div2.style.position = "absolute";
div2.style.top = (y - 25) + "px";
div2.style.left = (x - 25) + "px";
}
function remove(a){
a.parentNode.style.display="none";
}
</script>
</html>
22、继续javascript,左边选中的跳到右边的更多相关文章
- JavaScript 操作选中当前的li元素并给他添加select类
JavaScript 操作选中当前的li元素并给他添加select类.之前都是使用jquery写的,今天使用JavaScript写一个. <!DOCTYPE html> <html ...
- javaScript实现选中文字提示新浪微博分享的效果
<!DOCTYPE html> <html xmlns:wb="http://open.weibo.com/wb"> <head> <me ...
- [javascript]各种页面定时跳转(倒计时跳转)代码总结
(1)使用setTimeout函数实现定时跳转(如下代码要写在body区域内) <script type="text/javascript"> //3秒钟之后跳转到指定 ...
- NO.14 两个div并排,左边为绝对宽度,右边为相对宽度
两个div并排,左边为绝对宽度,右边为相对宽度,这个问题,我也经常遇到,我一般的处理方法是将最大的容器padding-left固定宽度,左边的固定宽度的一块position:absolute,然后ri ...
- [记录] CSS 左边元素定长,右边元素获得剩余长度
情景:左边元素定长,右边元素获得剩余长度 1. 左边设置浮动,右边元素宽度auto,可以不设置,默认auto,然后设置margin-left:左边元素宽度 <ul class="ent ...
- HTML / JavaScript / PHP 实现页面跳转的几种方式
① HTML 的 meta refresh 标签 <!doctype html> <html lang="en"> <head> <met ...
- javascript获取选中的文本/html
首先来谈一下Selection对象和Range对象. Selection是window.getSelection()方法返回的一个对象,用于表示用户选中的文本区域.Selection对象表现为一组Ra ...
- Python自动化运维之22、JavaScript
一.简介 JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处理.学习了htm ...
- javascript 自动选中容器里的文字
前些时间有这么个需求,需要实现选中div里面的文字,选中了的文字可直接按ctrl+v(或者右键)实现黏贴操作. html代码: <div id="text" class=&q ...
随机推荐
- 启发式分治:2019牛客多校第三场 G题 Removing Stones
问题可以转换为求有多少个区间数字的总和除2向下取整大于等于最大值.或者解释为有多少个区间数字的总和大于等于最大值的两倍(但是若区间数字总和为奇数,需要算作减1) 启发式分治: 首先按最大值位置分治,遍 ...
- css代码思考:display和float
关于display <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- Stimulsoft_Report纯代码实现数据绑定
Stimulsoft_Report纯代码实现数据绑定 根据穿的参数动态绑定显示报表,涉及多表查询. 一.前台代码: [code] <%@ Page Title="" Lan ...
- 使用cookie来做身份认证 转载https://www.cnblogs.com/sheldon-lou/p/9545726.html
文章是msdn的官方文档,链接在这里.其实也有中文的文档,这里还是想做一个记录. 文章有asp.net core 2.x 和1.x 版本,我这里就忽略1.x了. 下面先说几点额外的东西有助于理解. A ...
- 【扩展lucas定理】
洛谷模板题面:https://www.luogu.org/problemnew/show/P4720 扩展卢卡斯被用于解决模数为合数情形下的组合数问题. 首先我们把模数mod质因数分解,解决模每个素数 ...
- java 并发——ReentrantLock
java 并发--ReentrantLock 简介 public class ReentrantLock implements Lock, java.io.Serializable { // 继承了 ...
- python3中浮点数相减问题(大部分时候只需要关注整数的二进制形式就行了)
首先直接上判断方法:一切判断直接将整数部分装化成二进制,如果位数相等则相减后的值是等于的,如果不相等,相减大的结果一定不等于你要比较的结果. 如66.6-60.6==6.0的情况,66.6的二进制:1 ...
- 深海Django少年
orm查询,如果遇到我之前的环境报错 就可去manage.py中拷贝前四行代码到tests文件中,然后增加两行代码: import django django.setup() 或者任意新建一个py文件 ...
- CSS 中的各种居中 (水平、垂直)
导读: CSS 的居中有水平居中和垂直居中,这两种居中又分为行内元素居中和块级元素居中.根据父.子元素的高度是否清楚,又会使得不同的居中用不同方法.本文就其中一些情况做下简单说明,以作笔记之用,仅供大 ...
- 利用HTML和CSS实现常见的布局
水平居中的页面布局中最为常见的一种布局形式,多出现于标题,以及内容区域的组织形式,下面介绍四种实现水平居中的方法(注:下面各个实例中实现的是child元素的对齐操作,child元素的父容器是paren ...