JavaScript_基础练习7

https://www.w3school.com.cn/js/index.asp

1. JavaScript HTML DOM
HTML-----html标记
JavaScript -----javascript对象/变量
我们现在需要通过JavaScript来改变html标记所呈现的样子/样式/位置等等。那么这是我们就需要将html标记转换成javascript对象
将html标记转换成javascript对象----HTML DOM对象
DOM(文档对象模型)
当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。
在这里插入图片描述
通过这个对象模型,JavaScript 获得创建动态 HTML 的所有力量:
JavaScript 能改变页面中的所有 HTML 元素
JavaScript 能改变页面中的所有 HTML 属性
JavaScript 能改变页面中的所有 CSS 样式
JavaScript 能删除已有的 HTML 元素和属性
JavaScript 能添加新的 HTML 元素和属性
JavaScript 能对页面中所有已有的 HTML 事件作出反应
JavaScript 能在页面中创建新的 HTML 事件
通过 HTML DOM,JavaScript 能够访问和改变 HTML 文档的所有元素。
JavaScript - HTML DOM 方法
HTML DOM 方法是您能够(在 HTML 元素上)执行的动作。
HTML DOM 属性是您能够设置或改变的 HTML 元素的值。
下面的例子改变了 id=“demo” 的

元素的内容:

<html>
<body>
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = "Hello World!";
</script>
</body>
</html>

getElementById 方法
getElementById 方法使用 id=“demo” 来查找元素。
innerHTML 属性
//1.得到元素的内容
//var val=document.getElementById(“demo”).innerHTML;
//alert(val);
//2.改变元素的内容
document.getElementById(“demo”).innerHTML=“hello,网星”;
HTML DOM Document 对象
文档对象代表您的网页。
如果您希望访问 HTML 页面中的任何元素,那么您总是从访问 document 对象开始。
查找 HTML 元素

方法描述
document.getElementById(id)通过元素 id 来查找元素
document.getElementsByTagName(name)通过标签名来查找元素
document.getElementsByClassName(name)通过类名【class】来查找元素

1.document.getElementById(id) 通过 id 查找 HTML 元素
如果元素被找到,此方法会以对象返回该元素(在 myElement 中)。
如果未找到元素,myElement 将包含 null。
当有 HTML 元素的id相同的时候,只能得到一个。

  1. document.getElementsByTagName(name) 通过标签名查找 HTML 元素
    var p=document.getElementsByTagName(“p”);
    var temp=1;
    for(var i=0;i<p.length;i++){
    p[i].innerHTML=“第”+temp+“p元素”;
    temp++;
    }
    名称相同的元素组成一个数组。
    3.document.getElementsByClassName(name) 通过类名查找 HTML 元素
    var class_p=document.getElementsByClassName(“p2”);
    for(var i=0;i<class_p.length;i++){
    class_p[i].style.color = “blue”;
    }
    class属性值相同的元素组成一个数组。
    改变 HTML 元素
方法描述
element.innerHTML = new html content改变元素的 inner HTML
element.attribute = new value改变 HTML 元素的属性值
element.setAttribute(attribute, value)改变 HTML 元素的属性值
element.style.property = new style改变 HTML 元素的样式
  1. innerHTML 得到/改变元素的文本
  2. attribute 改变 HTML 元素的属性值
    element.attribute = new value 这个语法规则中attribute 使用具体的html元素的属性名称来代替
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script>
			function  addBoder(){
				var tableObject=document.getElementById("mainTable");
				tableObject.border="1px";
			}
			function  addwidth(){
				var tableObject=document.getElementById("mainTable");
				tableObject.width="400px";
			}
			function  addbgcolor(){
				var tableObject=document.getElementById("mainTable");
				tableObject.bgColor="red";
			}
			function  addtrbgcolor(){
				var trObject=document.getElementsByTagName("tr");
				for(var i=0;i<trObject.length;i++){
					if(i%2!=0){
						trObject[i].bgColor="blue";
					}
				}
			}
		</script>
	</head>
	<body>
		<input type="button" value="设置表格的边框" onclick="addBoder();"/>
		<input type="button" value="设置表格的宽度" onclick="addwidth();"/>
		<input type="button" value="设置表格的隔行变色" onclick="addtrbgcolor();"/>
		<input type="button" value="设置表格的背景色" onclick="addbgcolor();"/>
		<table id="mainTable" >
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
		</table>
	</body>
</html>

在这里插入图片描述
得到指定的html元素的对应的属性值
function getborder(){
var tableObject=document.getElementById(“mainTable”);
alert(tableObject.border);
}
3. setAttribute(attribute, value)改变 HTML 元素的属性值
attribute—html元素的属性名称
value-------html元素的属性名称的取值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	<script>
			function  addBoder(){
				var tableObject=document.getElementById("mainTable");
				tableObject.setAttribute("border","1px");
			}
			function  addwidth(){
				var tableObject=document.getElementById("mainTable");
				tableObject.setAttribute("width","400px");
			}
			function  addbgcolor(){
				var tableObject=document.getElementById("mainTable");
				tableObject.setAttribute("bgcolor","red");
			}
			function  addtrbgcolor(){
				var trObject=document.getElementsByTagName("tr");
				for(var i=0;i<trObject.length;i++){
					if(i%2!=0){
						trObject[i].setAttribute("bgcolor","blue")="blue";
					}
				}
			}
		</script>
	</head>
	<body>
		<input type="button" value="设置表格的边框" onclick="addBoder();"/>
		<input type="button" value="设置表格的宽度" onclick="addwidth();"/>
		<input type="button" value="设置表格的隔行变色" onclick="addtrbgcolor();"/>
		<input type="button" value="设置表格的背景色" onclick="addbgcolor();"/>
		<table id="mainTable" >
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
		</table>
	</body>
</html>

在这里插入图片描述
4. element.style.property = new style 得到/设置html元素对应CSS样式的属性值。
html元素的属性值----出现在html开始标记中的属性设置
CSS样式的属性值----给html设置的css样式中的属性。

html元素的属性值–src
css样式中的属属性值–src[错误]

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<!--
		<style>
			#div{
				width:200px;
				height:200px;
				background-color: black;
			}
		</style>
		-->
		<script>
			function testStyleAttr(){
				var divObject=document.getElementById("div");
				var wid=divObject.style.width;
				var hei=divObject.style.height;
				var mycolor=divObject.style.backgroundColor;
				alert(wid+","+hei+","+mycolor);
				divObject.style.width="400px";
				divObject.style.height="400px";
				divObject.style.backgroundColor="red";
			}
		</script>
	</head>
	<body>
		<input type="button" value="测试修改样式属性" onclick="testStyleAttr();" />
		<div id="div" 
		        style="width:200px;height:200px;background-color: black;">
		</div>
		<!--
		<div id="div"></div>
		-->
	</body>
</html>

在这里插入图片描述
添加和删除元素

方法描述
document.createElement(element)创建 HTML 元素
document.removeChild(element)删除 HTML 元素
document.appendChild(element)添加 HTML 元素
document.replaceChild(element)替换 HTML 元素
document.write(text)写入 HTML 输出流
createTextNode(text)创建文本元素

添加和删除节点(HTML 元素)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script>
			/*
			function testElement(){
				var pobj=document.createElement("p");
				alert(pobj);
			}
			*/
		window.onload=function(){ 
		   document.getElementById("but").onclick=function(){
			   /*
			  //createElement(element)创建 HTML 元素
			  var pobj=document.createElement("p");
			  //createTextNode(text)创建文本元素
			  var node=document.createTextNode("测试添加p元素的文本值");
			  //将文本元素添加到HTML 元素中
			  pobj.appendChild(node);
			  //根据id得到div对象
			  var divobj = document.getElementById("div1");
			  divobj.appendChild(pobj);
			  */
			 
			 /*错误
			 var pobj=document.createElement("<p>测试添加p元素的文本值</p>");
			 //根据id得到div对象
			 var divobj = document.getElementById("div1");
			 divobj.appendChild(pobj);
			  */
			 
			 /*
			 //document.removeChild(element)	删除 HTML 元素
			  var p1 = document.getElementById("p1");
			  var divobj = document.getElementById("div1");
			  divobj.removeChild(p1);
			  */
			 
			 /*
			 //document.replaceChild(新元素,旧元素)	替换 HTML 元素
			 var pobj=document.createElement("p");
			 var node=document.createTextNode("测试添加p元素的文本值");
			 pobj.appendChild(node);
			 
			 var p1 = document.getElementById("p1");
			 var divobj = document.getElementById("div1");
			 divobj.replaceChild(pobj,p1);
			 */
			
			 document.write("<h1>测试写出一个html元素</h1>")
		   };
		  }
		</script>
	</head>
	<body >
		<!--<input  type="button" value="测试元素的添加" onclick="testElement();"/><br>-->
		<input id="but" type="button" value="测试元素的添加"/><br>
		<div id="div1">
		<p id="p1">这是一个段落。</p>
		<p id="p2">这是另一个段落。</p>
		</div>
		
	</body>
</html>

在这里插入图片描述
在这里插入图片描述
添加事件处理程序

方法描述
document.getElementById(id).onclick = function(){code}向 onclick 事件添加事件处理程序

window.οnlοad=function(){
document.getElementById(“but”).οnclick=function(){
alert(“按钮的点击事件”);
};
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值