JavaScript 对图像进行(追加,插入,替换,删除)

JavaScript 对图像进行(追加,插入,替换,删除)

本次所学内容:
document.querySelector('.container')           

这个是可以查找单个【id标签和class标签】

document.querySelectorAll('.container')       

这个是可以查找全部【li标签和class标签】

container.appendChild(img)              

这个是对container标签进行追加子标签

container.firstElementChild            

这个是在(谷歌浏览器兼容),功能是查找container标签下的第一个子标签

container.firstChild;                 

这个是在(IE8兼容),功能是查找container标签下的第一个子标签

container.lastElementChild                            

这个是在(谷歌浏览器兼容),功能是查找container标签下的最后一个子标签

container.lastChild;                                         

这个是在(IE8兼容),功能是查找container标签下的最后 一个子标签

container.insertBefore(img,firstImg);               

这个是对container标签的子标签进行插入功能,参数一个是要插入的标签,后边的参数是要在那个节点进行插入

container.replaceChild(img,lastImg);            

这个是对container标签然后替换这个标签下的标签,共有俩个参数,一个是要替换的标签,一个是被替换的标签

  

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>1.节点方法:添加、替换、删除</title>
	<style>
	/*对class标签进行css样式*/
	.container{
		width:600px;
		/*设置宽度为600px*/
		height:600px;
		/*设置高度为600px*/
		border:1px solid #ddd;
		/*设置边框 厚度为1px 使用实线,颜色为灰色*/
	}
	img{
		/*通过img标签名进行查找*/
		width:100px;
		/*设置宽度为100px*/
		height:100px;
		/*设置高度为100px*/
		border-radius:50%;
		/*设置图像显示的范围,50%为园型图*/
		float:left;
		/*使用向左悬浮,去掉间隙*/
	}
	</style>
</head>
<body>
	<div class="container">
	<!-- 定义一个div标签 -->
		<img src="images/1.jpg" alt=""/>
		<!-- 在div标签中定义一个img标签 -->
	</div>
	<button>点击追加一张图片</button>
	<!-- 定义一个按钮标签 -->
	<button>点击前面添加一张图片</button>
	<!-- 定义一个按钮标签 -->
	<button>点击替换最后一张图片</button>
	<!-- 定义一个按钮标签 -->
	<button>点击删除第三张图片(索引值为2)</button>
	<!-- 定义一个按钮标签 -->
</body>
<script>
/*
方法
	// append:追加 child:子节点
	ul.appendChild(节点对象):

	// insert:添加 before:在...之前
	insertBefore(添加的节点,指定的节点)

	// replace:替换 
	replaceChild(新节点,被替换的节点)

	// remove:删除
	removeChild(删除的节点)
*/
	//1.获取对象
	var container = document.querySelector('.container');
	// 获取标签并赋值到一个变量中
	var btn = document.querySelectorAll('button');
	// 获取所有的标签并赋值到一个变量中,获取的是一个数组,每个数组中都是object对象
	
	//2.点击事件,追加一张图片images/2.jpg
	btn[0].onclick = function(){
		// 通过下标索引获取第一个button标签,然后绑定一个点击事件
		//(1)创建图片节点
		var img = document.createElement('img');
		//创建一个新的img标签,然后赋值给变量
		//(3)随机数
		var index = rand(1,60);
		// 调用函数将函数的执行效果赋值给变量
		img.src = 'images/' + index + '.jpg';
		// 使用拼接字符,然后设置标签的src属性
		img.alt = '美女图';
		// 如果图片没有加载成功就就会返回美女图字符串
		// 
		//console.log(img);

		//(2)追加图片
		container.appendChild(img);
		// 这个是找到container 标签然后在这个标签的中添加字标签
	}

	//在节点之前添加节点
	btn[1].onclick = function(){
		//创建图片节点(添加一张新图片,浏览器上没有的图片,就只能创建)
		var img = document.createElement('img');
		img.src = 'images/' + rand(1,60) +'.jpg';
		img.alt = '美女头像图';


		//firstElementChild(谷歌兼容)
		//firstChild(IE8兼容)
		var firstImg = container.firstElementChild || container.firstChild;
		//获取第一张图片
		
		//头部添加图片(在节点之前添加)
		container.insertBefore(img,firstImg);
		// 使用插入的方法共有俩个参数,一个是要插入的内容是什么,一个参数是要在什么节点之前,
	}	

	//替换节点
	btn[2].onclick = function(){
		//1.新节点
		var img = document.createElement('img');
		// 创建一个新的标签
		img.src = 'images/'+rand(1,60)+'.jpg';
		// 使用字符串拼接,然后赋值给一个变量
		img.alt = '加班中';
		// 如果图片加载错误,就提示支付串加班中
		//2.最后一个节点
		var lastImg = container.lastElementChild || container.lastChild;
		// 查找container标签下的最后一个标签,然后赋值到一个新的变量中
		//3.替换节点
		container.replaceChild(img,lastImg);
		// 找到container标签然后替换这个标签下的标签,共有俩个参数,一个是要替换的标签,一个是被替换的标签
	}

	//点击删除第三张图片
	btn[3].onclick = function(){
		//获取第三张图片
		var threeChild = container.children[2];//获取了所有的标签子节点
		//console.log(threeChild);
		//删除该图片
		container.removeChild(threeChild);
	}

	//点击一次随机出现一张(1-60张图片)
	//随机数函数
	function rand(m,n){
		// 定义一个函数,需要有俩个参数
		//随机数
		return Math.floor(Math.random()*(n-m+1)+m);
		// 返回向下取整的方式然后执行随机数的函数
	}

</script>
</html>

转载于:https://www.cnblogs.com/guobaoyuan/p/7821646.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值