面向对象---中级
Posted distant-遥远
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象---中级相关的知识,希望对你有一定的参考价值。
面向对象的选项卡
把面向过程的程序,改写成面向对象的形式
原则
-不能有函数套函数,但可以有全局变量
过程
onload - 构造函数
全局变量 - 属性
函数 - 方法
改错
- this 事件,闭包,传参
对象与闭包
通过闭包传递this
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> <script> //创建函数 function Bbb() { var _this=this; this.b=5; document.getElementById(\'btn1\').onclick=function () { _this.show(); }; } //创建函数方法 Bbb.prototype.show=function () { alert(this.b); }; window.onload=function () { //创建函数实例 new Bbb(); }; </script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <style> #div1 input {background:#CCC;} #div1 .active {background:yellow;} #div1 div {width:200px; height:200px; background:#CCC; display:none;} </style> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> <script> window.onload=function () { var oTab=new TabSwitch(\'div1\'); }; function TabSwitch(id) { var oDiv=document.getElementById(id); this.aBtn=oDiv.getElementsByTagName(\'input\'); this.aDiv=oDiv.getElementsByTagName(\'div\'); var i=0; var _this=this; for(i=0;i<this.aBtn.length;i++) { this.aBtn[i].index=i; this.aBtn[i].onclick=function () { _this.tab(this); }; } } TabSwitch.prototype.tab=function (oBtn) { for(i=0;i<this.aBtn.length;i++) { this.aBtn[i].className=\'\'; this.aDiv[i].style.display=\'none\'; } oBtn.className=\'active\'; this.aDiv[oBtn.index].style.display=\'block\'; }; </script> </head> <body> <div id="div1"> <input class="active" type="button" value="教育" /> <input type="button" value="财经" /> <input type="button" value="aaa" /> <div style="display:block;">1asdfasdfds</div> <div>2xzcvxzcv</div> <div>5332342345</div> </div> </body> </html>
本节知识点
对象和闭包
以上是关于面向对象---中级的主要内容,如果未能解决你的问题,请参考以下文章