JavaScript DOM操作之:元素属性基础

HTML属性操作
	使用javascript来操作一个元素的HTML属性
	两种方式:
		对象属性
		对象方法
	两种结果:
		获取HTML属性
		设置HTML属性
		
	获取属性值
		obj.attr 
		
	设置HTML属性值
	obj.attr = "值"
	
	属性操作(对象方法):
		getAttribute()
			获取某个属性的值
			// obj.getAttribute("attr") 其中attr参数必须用引号引起来
			等价于obj.attr
			既可以获取静态html元素的属性值,也可以获取动态DOM的属性值
			和obj.attr的区别:
				getAttribute()可以获取自定义的属性
		setAttribute()
			设置某个属性的值
			obj.setAttribute("attr","值")
			等价于obj.attr="值"
			设置自定义属性同样只能使用obj.setAttribute("attr","值")
		removeAttribute()
			移除某个属性
			obj.removeAttribute("attr")
			要移除某个属性就只能使用这种方式
			大多数时候是通过移动属性结合class属性来整体控制元素的样式的
		hasAttribute()
			判断是否有某个属性
			obj.hasAttribute('attr')
			返回布尔值
			严谨的做法是先判断元素是否存在某个属性,然后才能删除
		
	
		

01获取静态html的属性值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			window.onload=function(){
				// 要获取属性,先要找到元素节点
				var oBtn = document.getElementById('btn');
				oBtn.onclick=function(){
					alert(oBtn.id);
					console.log(oBtn.className);
				}
			}
		</script>
	</head>
	<body>
		<input type="button" id='btn' class='mybtn' value='获取' />
	</body>
</html>

02获取动态DOM的属性值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			//动态创建一个DOM,然后获取其属性
			window.onload=function(){
				var oInput = document.createElement('input');
				oInput.id = 'submit';
				oInput.type = 'button';
				oInput.value = '提交';
				document.body.appendChild(oInput);
				oInput.onclick=function(){
					alert(oInput.id)
				}
			}
		</script>
	</head>
	<body>
	</body>
</html>

03获取文本框的值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			window.onload=function(){
				var oBtn=document.getElementById('btn');
				oBtn.onclick=function(){
					var oTxt=document.getElementById('txt');
					alert(oTxt.value);
				};
			}
		</script>
	</head>
	<body>
	<input type="text" name="" id="txt" />
	<input type="button" id='btn' value = '获取' />
	</body>
</html>

 04获取单选框的值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			window.onload=function(){
				var oBtn = document.getElementById('btn');
				console.log(oBtn.type);
				var oFruit=document.getElementsByName('fruit');
				console.log(oFruit[0].value);
				oBtn.onclick=function(){
					//遍历所有单选框
					for (var i;i<oFruit.length;i++){
						if (oFruit[i].checked){
							alert(oFruit[i].value)
						}
					}
				}
			}
		</script>
	</head>
	<body>
		<div class="">
			<label><input type="radio" name="fruit" id="" value="苹果" />苹果</label>
			<label><input type="radio" name="fruit" id="" value="香蕉" />香蕉</label>
			<label><input type="radio" name="fruit" id="" value="桃子" />桃子</label>
			<label><input type="radio" name="fruit" id="" value="樱桃" checked />樱桃</label>
		</div>
		<input type="button" name="" id="btn" value="获取" />
	</body>
</html>

 05获取复选框的值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			window.onload=function(){
				var oBtn=document.getElementById("btn");
				var oFruit = document.getElementsByName('fruit');
				var str = "";
				oBtn.onclick=function(){
					for (var i=0;i<oFruit.length;i++){
						if (oFruit[i].checked){
							str+=oFruit[i].value;
						}
					}
					alert(str);
				};
			}
		</script>
	</head>
	<body>
		<div >
			<label><input type="checkbox" name="fruit" id="" value="苹果" />苹果</label>
			<label><input type="checkbox" name="fruit" id="" value="香蕉" />香蕉</label>
			<label><input type="checkbox" name="fruit" id="" value="西瓜" />西瓜</label>
			<div id="">
				<input  id = 'btn' type="button" value="获取"/>
				
			</div>
			
			
			
		</div>
	</body>
</html>

 06获取下拉菜单的值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			window.onload=function(){
				var oBtn=document.getElementById("btn");
				var oSelect = document.getElementById("select");
				oBtn.onclick=function(){
					alert(oSelect.value);
				};
			}
		</script>
	</head>
	<body>
		<select id="select">
			<option value="成都">成都</option>
			<option value="康定">康定</option>
			<option value="南充">南充</option>
			<option value="遂宁">遂宁</option>
		</select>
		<input type="button" name="" id="btn" value="获取" />
	</body>
</html>

 07修改图片属性(图片切换的效果)

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			window.onload=function(){
				var oBtn=document.getElementById('btn');
				var oPic=document.getElementById('pic');
				var flag = true;
				oBtn.onclick=function(){
					if (flag){
						oPic.src='image/html.jpg';
						flag=false;
					}else{
						oPic.src='image/js.jpg';
						flag=true;
					}
				};
			}
		</script>
	</head>
	<body>
		<input type="button" name="" id="btn" value="切换" />
		<img src="image/html.jpg" id='pic'>
	</body>
</html>

 08获取自定义属性值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script type="text/javascript">
			window.onload=function(){
				var oBtn=document.getElementById('btn');
				oBtn.onclick=function(){
					// alert(oBtn.data) 得到的值是"undefined"
					// 因为data属性是自定义的,不是元素固有的,所以只能使用getAttribute()方法获取
					alert(oBtn.getAttribute("data"))
				}
			}
		</script>
	</head>
	<body>
		<input type="button" name="" id="btn" value="获取" data="javascript"/>
	</body>
</html>

 09移除属性方法

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			.main{
				color:red;
				font-weight: bold;
			}
		</style>
		<script type="text/javascript">
			window.onload=function(){
				var oP=document.getElementsByTagName('p');
				var oBtnAdd=document.getElementById('btn_add');
				var oBtnRemove=document.getElementById('btn_remove');
				// 添加class属性
				oBtnAdd.onclick=function(){
					oP[0].setAttribute('class','main');
				};
				oBtnRemove.onclick=function(){
					oP[0].removeAttribute('class');
				}
				
			}
		</script>
	</head>
	<body>
		<p class="main">我自横刀向天笑</p>
		<p class="main">去留肝胆两昆仑</p>
		<p class="main">躲进小楼成一统</p>
		<input type="button" name="" id="btn_add" value="添加" />
		<input type="button" name="" id="btn_remove" value="移除" />
	</body>
</html>

从入门到入土.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值