JavaScript之DOM技术
Javascript实现简易计算器
<html>
<head>
<title>计算器</title>
<style>
td {
color: red;
font-size: 20px;
width: 50px;
}
input {
margin: 0px;
width: 50px;
height: 50px;
}
</style>
</head>
<body>
<table border="2" align="center" bgcolor="#dddddd">
<tr height="100">
<td align="right" valign="middle" colspan="5" style="font-size: 50px">
<p id="p1">0</p>
</td>
</tr>
<tr height="50">
<td align="center" valign="middle"><input type="button"
value="MC"></td>
<td align="center" valign="middle"><input type="button"
value="MR"></td>
<td align="center" valign="middle"><input type="button"
value="MS"></td>
<td align="center" valign="middle"><input type="button"
value="M+"></td>
<td align="center" valign="middle"><input type="button"
value="M-"></td>
</tr>
<tr height="50">
<td align="center" valign="middle"><input type="button"
value="←"></td>
<td align="center" valign="middle"><input type="button"
value="CE"></td>
<td align="center" valign="middle"><input type="button"
value="C" οnclick="clean()"></td>
<td align="center" valign="middle"><input type="button"
value="+/-"></td>
<td align="center" valign="middle"><input type="button"
value="√"></td>
</tr>
<tr height="50">
<td align="center" valign="middle"><input type="button"
value="7" οnclick="txclick(this)"></td>
<td align="center" valign="middle"><input type="button"
value="8" οnclick="txclick(this)"></td>
<td align="center" valign="middle"><input type="button"
value="9" οnclick="txclick(this)"></td>
<td align="center" valign="middle"><input type="button"
value="/" οnclick="fu(this)"></td>
<td align="center" valign="middle"><input type="button"
value="%"></td>
</tr>
<tr height="50">
<td align="center" valign="middle"><input type="button"
value="4" οnclick="txclick(this)"></td>
<td align="center" valign="middle"><input type="button"
value="5" οnclick="txclick(this)"></td>
<td align="center" valign="middle"><input type="button"
value="6" οnclick="txclick(this)"></td>
<td align="center" valign="middle"><input type="button"
value="*" οnclick="fu(this)"></td>
<td align="center" valign="middle"><input type="button"
value="1/x"></td>
</tr>
<tr height="50">
<td align="center" valign="middle"><input type="button"
value="1" οnclick="txclick(this)"></td>
<td align="center" valign="middle"><input type="button"
value="2" οnclick="txclick(this)"></td>
<td align="center" valign="middle"><input type="button"
value="3" οnclick="txclick(this)"></td>
<td align="center" valign="middle"><input type="button"
value="-" οnclick="fu(this)"></td>
<td align="center" valign="middle" rowspan="2"><input
type="button" value="=" style="height: 100px" οnclick="deng()"></td>
</tr>
<tr height="50">
<td align="center" valign="middle" colspan="2"><input
type="button" value="0" style="width: 100px" οnclick="txclick(this)"></td>
<td align="center" valign="middle"><input type="button"
value="."></td>
<td align="center" valign="middle"><input type="button"
value="+" οnclick="fu(this)"></td>
</tr>
</table>
<script language="javascript">
/*
1、录入第一个操作数
2、录入符号
3、录入第三个操作数
4、等于
*/
var firstvalue = 0;//存储第一个操作数
var secondvalue = 0;//存储第二个操作数
var s = "";//存储符号
var flag = 0 ;//flag为0时,表示现在正在录入第一个操作数,非0时录入第二个操作数
var flag_a = 0;//给第一个操作数赋值时,flag_a为0,表示第一个操作数还没有初始值,可以直接赋值,否则将数值连接起来
var showresult = document.getElementById("p1");//通过id获取显示的标签对象
var showvalue="";//每次录入的值之后的结果
//数字区域点击触发事件
function txclick(mybutton) {
if (flag == 0) {
if(flag_a==0){
showvalue = parseInt(mybutton.value);
flag_a = 1;
}else {
showvalue = parseInt(showvalue+""+mybutton.value);
}
firstvalue=showvalue;
} else {
if(flag==1){//第一次给第二个操作数赋值
showvalue = parseInt(mybutton.value);
flag=flag+1;
}else{
showvalue = parseInt(showvalue+""+mybutton.value);
}
secondvalue = showvalue;
}
showresult.innerHTML = parseInt(showvalue);
}
//运算符点击触发事件
function fu(but) {
flag = 1;
s = but.value;
showresult.innerHTML = s;
}
//等号点击事件
function deng() {
var result = 0;
if (s == "+") {
result = firstvalue + secondvalue;
} else if (s == "-") {
result = firstvalue - secondvalue;
} else if (s == "*") {
result = firstvalue * secondvalue;
} else {
result = firstvalue / secondvalue;
}
showresult.innerHTML = result;
flag = 1;
firstvalue = result;
}
//
function clean(){
firstvalue = 0;
secondvalue = 0;
flag = 0;
flag_a = 0;
s = "";
showresult.innerHTML =0;
}
</script>
</body>
</html>
Javascript实现有序列表增加和删除
<html>
<body>
<ol id="l">
<li>张三</li>
<li>李四</li>
</ol>
<input type="text" name="name" ></input>
<input type="button" οnclick="addlist()" value="添加"></input>
<script>
function addlist()
{
var para=document.createElement("li");//这段代码创建新的<li>元素
var node=document.createTextNode(document.getElementsByName("name")[0].value);//如需向<li>元素添加文本,必须首先创建文本节点。这段代码创建了一个文本节点
para.appendChild(node);//向<li>元素追加了这个文本节点
//最后必须向一个已有的元素追加这个新元素
var element=document.getElementById("l");//这段代码找到一个已有的元素
element.appendChild(para);//这段代码向这个已有的元素追加新元素
}
</script>
</body>
</html>
<html>
<body>
<ol id="l">
<li>张三</li>
<li>李四</li>
</ol>
<input type="text" name="name" ></input>
<input type="button" οnclick="addlist()" value="添加">
<input type="button" οnclick="deletelist()" value="删除">
<input type="button" οnclick="showlist()" value="显示">
<script>
var i = 0;
function addlist()
{
i=i+1;
var para=document.createElement("li");//这段代码创建新的<li>元素
var node=document.createTextNode(document.getElementsByName("name")[0].value);//如需向<li>元素添加文本,必须首先创建文本节点。这段代码创建了一个文本节点
para.appendChild(node);//向<li>元素追加了这个文本节点
para.name="tx";
para.id="tx"+i;
//最后必须向一个已有的元素追加这个新元素
var element=document.getElementById("l");//这段代码找到一个已有的元素
element.appendChild(para);//这段代码向这个已有的元素追加新元素
}
function deletelist(){
if(i<=0){
return ;
}
var element=document.getElementById("l");//这段代码找到一个已有的元素
var myli = document.getElementById("tx"+i);
element.removeChild(myli);
i=i-1;
}
function showlist(){
var element=document.getElementById("l");
var a= element.childNodes;
for(var i=0;i<a.length;i++){
var b = a[i];
alert(b.nodeType);
//nodeType类型:元素 1;属性 2;文本 3;注释 8;文档 9
switch(b.nodeType){
case 1:
alert("元素"+b.nodeType);
break;
case 2:
alert("属性"+b.nodeType);
break;
case 3:
alert("文本"+b.nodeType);
break;
default:
alert("其他"+b.nodeType);
}
}
}
</script>
</body>
</html>
Javascript遍历HTML网页中的所有元素的节点
<!DOCTYPE html>
<html>
<head>
<title>一个简单的文档</title>
<script language="javascript">
var elementList = "";//全局变量,保存Element标记名,使用完毕要清空
function getElement(node){//参数node是一个Node对象
var total=0;
//nodeType类型:元素1;属性2;文本3;注释8;文档9
if(node.nodeType == 1){//检查node是否为Element对象
total++;//如果是,计数器加1
elementList = elementList + node.nodeName + "、";//保存标记名
}
var childrens = node.childNodes;//获得node的全部子节点
for(var m = node.firstChild;m!=null;m = m.nextSibling){
total += getElement(m);//对每个子节点进行递归操作
}
return total;
}
function show(){
var number = getElement(document);//获取标记总数 document里面都包含什么????????????????????、
elementList = elementList.substring(0,elementList.length-1);
alert("该文档中包含:"+elementList+"等"+number+"个标记!");
elementList="";//清空全局变量
}
</script>
</head>
<body οnlοad="show()">
遍历HTML网页中的所有元素的节点
<br>
<a href="http://www.baidu.com">http://www.baidu.com</a>
</body>
</html>
Javascript增加和删除段落
<!DOCTYPE html>
<html>
<head>
<title>添加删除节点</title>
<script language="javascript">
function add(){
var para =document.createElement("p");
var node =document.createTextNode("这是一个新段落");
para.appendChild(node);
var element = document.getElementById("div1");
element.appendChild(para);
}
function delete1(){
var parent=document.getElementById("div1");
var child =document.getElementById("p1");
parent.removeChild(child);
}
</script>
</head>
<body>
<div id="div1">
<p id="p1">这是一个段落。</p>
<p id="p2">这是二个段落。</p>
</div>
<input type="button" value="增加" id="add" οnclick="add()">
<input type="button" value="删除" id="delete" οnclick="delete1()">
</body>
</html>
Javascript有序列表增加和删除
<!DOCTYPE html>
<html>
<head>
<title>增加有序列表</title>
<script language="javascript">
function add(){
var c = document.getElementById("text1").value;
var a = document.getElementById("id1");
var para = document.createElement("li");
var node = document.createTextNode(c);
para.appendChild(node);
a.appendChild(para);
}
function delete1(){
var a =document.getElementById("id1");
var b=a.lastChild;
if(a.firstChild.nextSibling.nextSibling.nextSibling.nextSibling!=null){
a.removeChild(b);
}
var c=a.lastChild;
if(a.firstChild.nextSibling.nextSibling.nextSibling.nextSibling!=null){
a.removeChild(c);
}
}
</script>
</head>
<body id="body1">
<ol id="id1">
<li>sb1</li>
<li>sb2</li>
<li>sb3</li>
<li>sb4</li>
</ol>
<input type="text" id="text1">
<input type="button" id="show" value="添加" οnclick="add()">
<input type="button" id="delete1" value="删除" οnclick="delete1()">
</body>
</html>
Javascript时间显示
<!DOCTYPE html>
<html>
<head>
<title>时间显示器</title>
<script language="javascript">
function clockon(bgclock){
var now = new Date();
var year = now.getYear();
var month = now.getMonth();
var date = now.getDate();
var day = now.getDay();
var hour = now.getHours();
var minu = now.getMinutes();
var sec = now.getSeconds();
var week;
month = month+1;
if(month<10){
month = "0"+month;
}
if(date<10){
date = "0"+date;
}
if(hour<10){
hour = "0"+hour;
}
if(minu<10){
minu = "0"+minu;
}
if(sec<10){
sec="0"+sec;
}
var arr_week = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六");
week = arr_week[day];
var time = "";
time = (year+1900) + "年" + month + "月" + date + "日 " + week + " " + hour + ":" + minu + ":" + sec;
bgclock.innerHTML ="系统公告:【"+time+"】";
var timer = setTimeout("clockon(bgclock)",200);
}
</script>
</head>
<body onLoad="clockon(bgclock)">
<table width="100%" height="45" border="0" cellpadding="-2">
<tr>
<td><div id="bgclock" class="word_grey"></div></td>
</tr>
</table>
</body>
</html>
Javascript闪瞎你的狗眼
<!DOCTYPE html>
<html>
<head>
<title>闪瞎你的狗眼</title>
<script language="javascript">
var i =0;
var color = new Array("#0000FF", "#99FF00", "#660033", "#CC66CC", "#FFFF33");
function change(){
if(i>color.length-1)
i=0;
table1.style.borderColor=color[i];
i+=1;
setTimeout("change()",500);
}
</script>
</head>
<body οnlοad="change()">
<table id="table1" align="center" border=5>
<tr>
<td>闪闪闪</td>
</tr>
<tr>
<td><pre>靓靓靓</pre></td>
</tr>
</table>
</body>
</html>
作业:
<!DOCTYPE html>
<html>
<head>
<title>也门Ogygia监狱</title>
<link rel="stylesheet" type="text/css" href="style.css">
<script language="javascript">
var i =0;
var n =0;
//发表人和内容
function fabiao(){
i=i+1;
//获得评论内容
var pinglun = document.getElementById("neirong");
//获得人
var pinglunren1 = document.getElementById("ren");
//创建节点p
var node=document.createElement("p");
var node1=document.createElement("p");
//创建内容
var pare=document.createTextNode(pinglunren1.value);
var pare1 = document.createTextNode(pinglun.value);
node.appendChild(pare);
node.id="zyq"+i;
node1.appendChild(pare1);
node1.id="zyq1"+i
var element = document.getElementById("pinglunren");
var element1 = document.getElementById("pinglunneirong");
element.appendChild(node);
element1.appendChild(node1);
}
//删除第一行
function shanchu11(){
n=n+1;
//获得节点
var node = document.getElementById("pinglunren");
var node1 = document.getElementById("pinglunneirong");
//获得第一个子节点
var node_child = document.getElementById("zyq"+n);
var node1_child = document.getElementById("zyq1"+n);
//删除第一个子节点
node.removeChild(node_child);
node1.removeChild(node1_child);
}
//删除最后一行
function shanchu21(){
if(i<=0){
return;
}
//获得节点
var node = document.getElementById("pinglunren");
var node1 = document.getElementById("pinglunneirong");
//获得第一个子节点
var node_child = document.getElementById("zyq"+i);
var node1_child = document.getElementById("zyq1"+i);
//删除第一个子节点
node.removeChild(node_child);
node1.removeChild(node1_child);
i=i-1;
}
</script>
</head>
<body id="mybody">
<form method="" action="" id="myform">
<table id="mytable" style="position:absolute;left:400px;top:200px;border-style:solid;">
<tr style="border-style:solid;">
<td colspan="2">评论人:</td>
<td colspan="2"><input style="width:230px;height:40px;" type="text" id="ren"></td>
</tr>
<tr>
<td colspan="2">评论内容:</td>
<td colspan="2" ><textarea cols="30" rows="10"id="neirong"></textarea></td>
</tr>
<tr>
<td><input type="button" id="fabiao1" value="发表" οnclick="fabiao()"></td>
<td><input type="reset" id="chongzhi1" value="重置"></td>
<td><input type="button" id="shanchu1" value="删除第一行评论" οnclick="shanchu11()"></td>
<td><input type="button" id="shanchu2" value="删除最后一行评论" οnclick="shanchu21()"></td>
</tr>
<tr>
<td colspan="2" ">评论人</td>
<td colspan="2" ">评论内容</td>
</tr>
<tr>
<td colspan="2" id="pinglunren" ></td>
<td colspan="2" id="pinglunneirong"></td>
</tr>
<tr>
*以下用户言论只代表其个人观点,不代表本网站的观点或立场
</tr>
<table>
</form>
</body>
</html>
@CHARSET "UTF-8";
body{
background-image:url("123.jpg");
background-repeat:no-repeat;
background-attachment:scroll;
background-size:cover;
font-family:新宋体;
}