10-1 编程挑战

现在利用之前我们学过的JavaScript知识,实现选项卡切换的效果。

效果图:

aaarticlea/png;base64,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" alt="" />

文字素材:

房产:

275万购昌平邻铁三居 总价20万买一居
    200万内购五环三居 140万安家东三环
    北京首现零首付楼盘 53万购东5环50平
    京楼盘直降5000 中信府 公园楼王现房

家居:

40平出租屋大改造 美少女的混搭小窝
     经典清新简欧爱家 90平老房焕发新生
     新中式的酷色温情 66平撞色活泼家居
     瓷砖就像选好老婆 卫生间烟道的设计

二手房:

通州豪华3居260万 二环稀缺2居250w甩
     西3环通透2居290万 130万2居限量抢购
     黄城根小学学区仅260万 121平70万抛!
     独家别墅280万 苏州桥2居优惠价248万

任务

大家先思考和分析实现思路,然后在动手实现

一、HTML页面布局

提示:
选项卡标题使用ul..li
选项卡内容使用div

二、CSS样式制作

提示:
整个选项卡的样式设置
选项卡标题的样式设置
选项卡内容的样式设置
一开始只显示一个选项卡内容,其它选项卡内容隐藏。

三、JS实现选项卡切换

提示:
获取选项卡标题和选项卡内容
选项卡内容多个,需要循环遍历来操作,得知哪个选项卡和哪个选项内容匹配
通过改变DOM的css类名称,当前点击的选项卡显示,其它隐藏。

代码:

 <!DOCTYPE html>

 <html>

 <head lang="en">

     <meta charset="UTF-8">

     <title>实践题 - 选项卡</title>

     <style type="text/css">

         *{padding:0px;margin: 0px;font:12px normal "microsoft yahei";}

         #tabs {width:290px;padding:5px;height:150px;margin:20px;}

         #tabs ul{list-style:none;display: block;height:30px;line-height:30px;border-bottom:2px saddlebrown solid;}

         #tabs ul li{background:#fff;cursor:pointer;float:left;list-style:none;height:28px;line-height:28px;margin:0px 3px;border:1px solid #aaaaaa;border-bottom:none;display:inline-block;width:60px;text-align: center;}

         #tabs ul li.on{border-top:2px solid saddlebrown;border-bottom: 2px solid #fff;}

         #tabs div{height:120px;line-height: 25px;border:1px solid #336699;border-top:none;padding:5px;}

         .hide{display: none;}

     </style>

     <script type="text/javascript">

          window.onload = function(){

              var oTab = document.getElementById("tabs");

              var oUl = oTab.getElementsByTagName("ul")[0];

              var oLis = oUl.getElementsByTagName("li");

              var oDivs= oTab.getElementsByTagName("div");

              for(var i= 0,len = oLis.length;i<len;i++){

                  oLis[i].index = i;

                  oLis[i].onclick = function() {

                      for(var n= 0;n<len;n++){

                          oLis[n].className = "";

                          oDivs[n].className = "hide";

                      }

                      this.className = "on";

                      oDivs[this.index].className = "";

                  }

              };

          }

     </script>

 </head>

 <body>

 <div id="tabs">

     <ul>

         <li class="on">房产</li>

         <li>家居</li>

         <li>二手房</li>

     </ul>

     <div>

         275万购昌平邻铁三居 总价20万买一居<br>

         200万内购五环三居 140万安家东三环<br>

         北京首现零首付楼盘 53万购东5环50平<br>

         京楼盘直降5000 中信府 公园楼王现房<br>

     </div>

     <div class="hide">

         40平出租屋大改造 美少女的混搭小窝<br>

         经典清新简欧爱家 90平老房焕发新生<br>

         新中式的酷色温情 66平撞色活泼家居<br>

         瓷砖就像选好老婆 卫生间烟道的设计<br>

     </div>

     <div class="hide">

         通州豪华3居260万 二环稀缺2居250w甩<br>

         西3环通透2居290万 130万2居限量抢购<br>

         黄城根小学学区仅260万 121平70万抛!<br>

         独家别墅280万 苏州桥2居优惠价248万<br>

     </div>

 </div>

 </body>

 </html>

实践题 - 选项卡

要点:

JS 中“===”与 “==”比较的区别

1. ==用于一般比较,==在比较的时候可以转换数据类型。
2. ===用于严格比较,===严格比较,只要类型不匹配就返回flase。
看一个简单的例子:
 
给定 x=5
 
==  等于             x==8 为 false 
=== 全等(值和类型) x===5 为 true;x==="5" 为 false
 
举例说明:
 
"1"  ==  true
 
类型不同,"=="将先做类型转换,把true转换为1,即为 "1"  ==  1;
 
此时,类型仍不同,继续进行类型转换,把"1"转换为1,即为 1 == 1;
 
此时,"==" 左右两边的类型都为数值型,比较成功!
 
如果比较:"1"  ===  true 左侧为字符型,右侧为bool布尔型,左右两侧类型不同,结果为false;
 
如果比较:"1" === 1 左侧为字符型,右侧为int数值型,左右两侧类型不同,结果为false;
 
如果比较:1 === 1 左侧为int数值型,右侧为int数值型,左右两侧类型相同,数值大小也相同,结果为true;
 
如果比较:1 === 2 左侧为int数值型,右侧为int数值型,左右两侧类型相同,但数值大小不同,结果为false;
 
简而言之就是 "==" 只要求值相等; "===" 要求值和类型都相等

++a与a++的区别

a++是运算后自增,而++a是先自增在运算(即++a 先自加再取值,a++先取值在自加)

相同点:

a++和++a中, i的值自增1,也就是a=a+1;

不同点:

a++ : 把(a++)作为一个整体表达式,a 的值虽然自增1,但是整个表达式的值是取 a自增  之前  的值;

++a : 也把(++a)作为一个整体表达式,a 的值也自增1,但是整个表达式的值是取 a 自增  之后  的值。

看实例:

m=a++ 相当于 m=a,a=a+1

m=++a 相当于 a=a+1,m=a 这种自加运算和自减运算,都相当于两步骤

总结: a++ 是先把 a 赋值,然后自己加一, ++a,是先自己加一,然后再把 a 赋值。

JS中substr和substring的用法和区别

substr 和
substring都是JS 截取字符串函数,两者用法很相近,下面是两者的语法很示例:

一、substr 方法

返回一个从指定位置开始的指定长度的子字符串。
string.substr(start [, length ])

注意: length可选项。如 length
为 0 或负数,将返回一个空字符串。如果没有指定该参数,则子字符串到 string 的最后。

二、substring 方法

返回位于
String 对象中指定位置的子字符串。
string.substring(start, end)

注意:

substring 方法将返回一个包含从 start 到最后(不包含 end )的子字符串的字符串。

三、示例代码

var str =
"I love JS!";// 有一个str字符串,如想获取JS子字符串,用两种方法如何实现。
str.substr(7, 2); // 获取子字符串。

str.substring(7,
9); // 获取子字符串。

结果:  JS

区别:第二参数,substr第二个参数是获取子字符串的长度,substring第二个参数是获取子字符串的结束位置。

四、注意事项

substr和substring两个函数截取带有空格的字符串后的长度是每个空格算一个字符长度。例如:

var a = "I am imooc!";

a.substring(0, 5).length的值是5,而不是4,但alert(a.substring(0, 5));的值却是I am ,这样在做alert("I am" == a.substring(0, 5));的时候就是false了,alert("I am" ==
a.substring(0, 4));才是true。

最新文章

  1. ExtJS 数据模型
  2. 一次与51aspx客服MM谈话 -- 坑是怎么发展的
  3. VS调试时同时启动多个项目解决方法
  4. Css选择器的优先级
  5. 《OD学HBase》20160820
  6. IOS 9 遇到的问题
  7. vs2010-error LNK1123: failure during conversion to COFF: file invalid or corrupt
  8. UITextView ios7
  9. C#中的文件操作2
  10. 中英文混合字符串截取java
  11. MySQL最常用日期时间函数
  12. 数据模型与查询语言 ------《Designing Data-Intensive Applications》读书笔记2
  13. DSAPI官方QQ群
  14. 2019-1-17 前言 C#高级编程(第11版)
  15. 微信小程序从零开始开发步骤-引入框架WeUI
  16. iOS scrollsToTop属性失效
  17. 转:判断Caps Lock键是否打开,如果打开则关闭
  18. C# WEB.API 接收并解析保存base64格式的图片
  19. 【Linux】Memcached安装
  20. eclipse 安装

热门文章

  1. c# CODE REVIEW (13-11 TO 14-01)
  2. windows下的git使用指令
  3. Linux_异常_02_WinSCP上传文件时显示Permission denied
  4. PowerDesigner根据SQL文件生成PDM数据字典
  5. js 图片上传
  6. 乱写的一个SQL框架
  7. Python3中内置类型bytes和str用法及byte和string之间各种编码转换,python--列表,元组,字符串互相转换
  8. 4种方法实现C#无标题栏窗体的移动
  9. [hdu4311]Meeting point-1
  10. C# 清除cookies