JS属性操作,注意事项以及轮播图实例

今天学习了JS当中的最为基本的属性操作。

1、属性操作有:读操作———获取找到(元素.属性名)、写操作———添加修改替换(元素.属性名=新的值)

如读:alert(oBtn.value);                       写:oBtn.value=oBtn.value;(把右边的值赋给左边)

2、

<p id="p1">这是一些文字</p>

替换便签内部的内容需要用到innerHTML

document.getElementById('p1').innerHTML = 123;  //“这是一些文字”变成了“123”

3、当要利用属性值替换样式时,如字体大小:元素.style.fontSize     、     padding左的值:元素.style.paddingLeft

//JS中不能识别横线,需要去掉,并且把横线后的第一个首字母大写

4、通过class的样式来切换时,需要写成元素.className = “class的值”;

5、不能作为if判断条件有所有的相对路径的地址和颜色值

小例子:利用创建开关来实现两张图片之间的切换,if判断中不能写图片的路径。

6、关于表单元素属性值的修改问题:

元素.style.styleFloat = 'right'; // IE

元素.style.cssFloat = 'left'; // 非IE

7、a = a + b  可以写成  a+= b

8、数组:类似于放一堆数据的仓库,第一个数据是‘arr[0]’,最后一个数据是‘arr[arr.length-1]’

往数组的最后一位添加数据:arr.push('');

9、最后练习做了一个简单的轮播图实例:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<style type="text/css">
	.box{
		text-align: center;
		position: relative;
	}
	#img1{
		width: 60%;
		height: 500px;
	}
	a{
		position: absolute;
		top: 250px;
		font-size: 50px;
		text-decoration: none;	
		width: 50px;
		height: 70px;
		line-height: 70px;
	}
	#prev{
		left: 12%;
	}
	#next{
		right: 12%;	
	}
	a:hover{
		background: gray;
	}
</style>
<body>
	<div class="box">
		<input id="btn1" type="button" value="单向滚动" />
		<input id="btn2" type="button" value="循环滚动" />
		<h3 id="text1">1/4</h3>
		<img id="img1" src="image/1.jpg"/>
		<a id="prev" href="#"><</a>
		<a id="next" href="#">></a>
		<h3 id="text2">这是第一张图片</h3>
	</div>
<script type="text/javascript">
	var oText1 = document.getElementById('text1');
	var oText2 = document.getElementById('text2');
	var oImg1 = document.getElementById('img1');
	var oPrev = document.getElementById('prev');
	var oNext = document.getElementById('next');
	var oBtn1 = document.getElementById('btn1');
	var oBtn2 = document.getElementById('btn2');


	var arrImg = ['image/1.jpg','image/2.jpg','image/3.jpg','image/4.jpg'];
	var arrTex2 = ['这是第一张图片','这是第二张图片','这是第三张图片','这是第四张图片'];
	var arrTex1 = ['1/4','2/4','3/4','4/4'];
	var num = 0;

	function rep1(){
		oImg1.src = arrImg[num];
		oText1.innerHTML = arrTex1[num];
		oText2.innerHTML = arrTex2[num];
	}
	
	oBtn1.onclick = function (){
		oPrev.onclick = function (){
			if ( num > 0 ) {
				num--;
				rep1();
		}
			else{
				alert("不能再往左啦~~");
			}
		}
		oNext.onclick = function (){
			if ( num < 3 ) {
				num++;
				rep1();
		}
			else{
				alert("后面没有啦,亲~");
			}
		}
	}

	oBtn2.onclick = function (){
		oPrev.onclick = function (){
			if ( num > 0 ) {
				num--;
				rep1();
		}
			else{
				num = 3;
				rep1();
			}
		}
		oNext.onclick = function (){
			if ( num < 3 ) {
				num++;
				rep1();
		}
			else{
				num = 0;
				rep1();
			}
		}
	}
</script>
</body>
</html>

这段代码主要实现的功能是:在点击了单向滚动之后,在进行图片切换时不能够循环切换,切换到第一张再往左切换会弹出提示,同样,切换到最后一张再向右边切换也会再弹出提示;当点击了循环滚动之后,能够一直循环地切换并不弹出提示。

思路主要是:对最上面两个滚动按钮分开设置,在每一个里面再分别设置上一张和下一张按钮的功能,从而达到通过点击按钮,进入到不同的逻辑结构当中去。

猜你喜欢

转载自blog.csdn.net/weixin_42565663/article/details/80946957
今日推荐