• 控制元素的div属性


    1、需求分析

       改变元素的宽、高、颜色、显示、重置等属性。

    2、技术分析

       基础的css、html、js

    3、详细分析

    如图,单击按钮,改变元素属性:

    3.1 HTML部分

    根据视图不难发现,内容分两大不分:按钮栏和效果图,所以设置两个div。

    <body>
    	<div class="outer">
    		<input type="button" value="变宽" >
    		<input type="button" value="变高" >
    		<input type="button" value="变色" >
    		<input type="button" value="隐形" >
    		<input type="button" value="重置" >
    	</div>
    	<div class="content">	
    	</div>	
    </body>

    3.2 CSS部分

    <style type="text/css"> 
    /*页面格式化,清除浏览器默认编剧(浏览器预留给滚动条边距)*/ *{ padding: 0; margin: 0; } /*设置元素宽度,元素居中,文本居中*/ .outer{ 500px; argin: 0 auto; text-align: center; } /*元素样式*/ .content{ 100px; height: 100px; background: black; margin: 10px auto; } </style>

    3.3 JS部分 

    <script type="text/javascript">
    		var changeStyle=function(elem,attr,value){//声明一个函数,包含三个参数(元素,属性,值),外部函数1
    			elem.style[attr]=value//三个参数之间的函数关系,元素的样式属性的集合等于值(点操作符:对象,方括号操作符:对象,数组)
    		};
    		window.onload=function(){//文档加载完成时,调用函数
    			/*声明四大变量:按钮,元素,属性,值*/
    			var btn=document.getElementsByTagName("input");//按钮变量来自标签
    			var ctt=document.getElementClssName("content");//元素变量来自类名
    			var att=["width","height","background","display","display"];//属性名数组集合
    			var val=["200px","200px","red","none","block"];//属性值数组集合,属性值与属性名一一对应
    		for(var i=0;i<btn.length;i++){
    			btn[i].index=i;//数组btn中元素的索引值=i,给按钮数组中的每个元素编号
    			btn[i].onclick=function(){//给数组中的元素添加点击事件,点击第i个按钮,调用函数				
    			       changeStyle(ctt,att[this.index],val[this.index])//结合外部函数1,形成闭包,ctt为元素,this.index为按钮数组中元素的索引值,即i;属性att数组的第(this.index=i)个元素,属性值数组val的第(this.index=i)个元素值。
    			       this.index==btn.length-1&&(ctt.style.cssText=" ");//可写成:if(this.index==btn.length-1){ctt.style.cssText=""},点击第四个按钮,清空css样式(cssText()适用块元素)
    		    }
    	    }
    	}
    </script>
    

      

       

  • 相关阅读:
    ASP.NET学习笔记(1)
    vs2005新建项目中没有ASP.NET WEB应用程序
    IE无法安装Activex控件
    【Android】SDK工具学习
    【英语】Bingo口语笔记(22)
    【Python】实践笔记
    【学习】纪录片笔记
    【英语】Bingo口语笔记(20)
    【英文】20141027 生词
    【英文】Bingo口语笔记(18)
  • 原文地址:https://www.cnblogs.com/shidingzhang/p/9359424.html
Copyright © 2020-2023  润新知