慕课网javascript 进阶篇 第十章 编程练习

---恢复内容开始---

第十章的编程练习是选项卡切换的问题。

先分析下思路,

一、HTML页面布局

我们可以用ui li 标签来写最上面一行的内容;用个div来装下面内容,为了实现更多的效果,我们可以把上面那行的文字放在<a>标签里。

二、CSS样式制作

对文档进行基本的样式设置,font color border 那些

三、JS实现选项卡切换

通过改变DOM的css类名称,当前点击的选项卡显示,其它隐藏。

---恢复内容结束---

第十章的编程练习是选项卡切换的问题。

先分析下思路,

一、HTML页面布局

我们可以用ui li 标签来写最上面一行的内容;用个div来装下面内容,为了实现更多的效果,我们可以把上面那行的文字放在<a>标签里。

二、CSS样式制作

对文档进行基本的样式设置,font color border 那些

三、JS实现选项卡切换

1 当我们点击的时候下面的内容是变换过来了,那么就是内容的的切换,我一开始可以设置三个div,分别装三部分文字内容,切换到谁就让谁显示出来

也就是display:block;其余的都是display:none;隐藏起来。

2  既然是一个选项对应这一个内容 那他们之间是什么联系着的?我们在写js的时候应该怎么把两者关联上,因为我们绑定事件的时候 他们是要一起发生事件的。

开始敲吧:

html css布局  加样式就不多说了 主要是js:

<ul>
    <li class="house"><a href="#" onclick="changecolor()">房产</a></li>
    <li><a href="#" onclick="changecolor()">家居</a></li>
    <li><a href="#" onclick="changecolor()">二手房</a></li>
</ul>
<div class="div1">
        <p>275万购昌平邻铁三居 总价20万买一居</p>
        <p>200万内购五环三居 140万安家东三环</p>
        <p>北京首现零首付楼盘 53万购东5环50平</p>
        <p>京楼盘直降5000 中信府 公园楼王现房</p>

</div>
<div class="div2">
    <p>40平出租屋大改造 美少女的混搭小窝</p>
    <p>经典清新简欧爱家 90平老房焕发新生</p>
    <p>新中式的酷色温情 66平撞色活泼家居</p>
    <p>瓷砖就像选好老婆 卫生间烟道的设计</p>
</div>
<div class="div3">
    <p>通州豪华3居260万 二环稀缺2居250w甩</p>
    <p>西3环通透2居290万 130万2居限量抢购</p>
    <p>黄城根小学学区仅260万 121平70万抛!</p>
    <p>独家别墅280万 苏州桥2居优惠价248万</p>
</div>
js:
<script type="text/javascript">
        // JS实现选项卡切换

        function changecolor() {
            var anode=document.getElementsByTagName("a");
            var linode=document.getElementsByTagName("li");
            var divnode=document.getElementsByTagName("div")
           // var divn2ode=document.getElementById("div2");
            //var divn3ode=document.getElementById("div3");

            for(var i=0;i<linode.length;i++){
                linode[i].index=i;  //因为一开始不知道index这个属性;所以一直联系不上li标签和div标签的关系
                linode[i].onclick=function () {

                 for(var n=0;n<linode.length;n++){
                      linode[n].className="";
                      divnode[n].className="hide";
                    }      //这个地方给的for循环很有意思 也用的很好  得好好琢磨琢磨
                    this.className="house";//这两端代码不能写在内部for循环之前,因为js是从上解析到下的 因为前面的for循环是把所有的li属性都归结到原始的状态
                    divnode[this.index].className="div1";//我们后面的是给前面归结到原始状态的添加新的className属性 div属性也一样 一开始都隐藏起来 后来在给予

               }
                }
        }
时间: 2024-10-24 14:09:50

慕课网javascript 进阶篇 第十章 编程练习的相关文章

慕课网javascript 进阶篇 第九章 编程练习

把平常撸的码来博客上再撸一遍既可以加深理解,又可以理清思维.还是很纯很纯的小白,各位看官老爷们,不要嫌弃.最近都是晚睡,昨晚也不例外,两点多睡的.故,八点起来的人不是很舒服,脑袋有点晕呼呼,鉴于昨晚看到了这章的编程练习,想着自己DOM编程艺术也差不多看完了,高级3也看了点,所打算开始多敲代码了. 谁知,看着编辑器一脸懵逼,不知道如何啃下这块骨头,米思绪,写着也没什么感觉,索性就不写了,这不下午才来撸它. 要求如下: <!DOCTYPE html> <html> <head&g

JavaScript 进阶篇的学习~

---恢复内容开始--- 让你认识JS 你知道吗,Web前端开发师需要掌握什么技术?也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HTML+CSS创建一个漂亮的页面,但这还不够,它只是静态页面而已.我们还需使用JavaScript增加行为,为网页添加动态效果.准备好,让JavaScript带你进入新境界吧! JavaScript能做什么? 1.增强页面动态效果(如:下拉菜单.图片轮播.信息滚动等) 2.实现页面与用户之间的实时.动态交互(如:用户注册.登陆验证等

慕课网javascript动画特效 多透明度 源代码

慕课网javascript动画特效 多透明度 源代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>多物体运动</title> <style> div{ width:200px; height:100px; background:yellow; margin-bottom: 20px; filte

#笔记#JavaScript进阶篇一

#JavaScript进阶篇 http://www.imooc.com/learn/10 #认识DOM #window对象 浏览器窗口可视区域监测—— 在不同浏览器(PC)都实用的 JavaScript 方案: var w= document.documentElement.clientWidth || document.body.clientWidth; var h= document.documentElement.clientHeight || document.body.clientHe

Javascript进阶篇——(JS基础语法)笔记整理

根据慕课网学习整理到一起的笔记,把东西整理到一起看起来比较方便 什么是变量字面意思:变量是可变的量:编程角度:变量是用于存储某种/某些数值的存储器.我们可以把变量看做一个盒子,盒子用来存放物品,物品可以是衣服.玩具.水果...等. 表达出你的想法(表达式)表达式与数学中的定义相似,表达式是指具有一定的值.用操作符把常数和变量连接起来的代数式.一个表达式可以包含常数或变量. 字符串表达式:"I" + "love" + "you" + mychar

Javascript进阶篇——总结--DOM案例+选项卡效果

断断续续的把慕课的JavaScript基础和进阶看完了,期间不怎么应用有的都忘记了,接下来多开始写些效果,进行实际应用. 制作一个表格,显示班级的学生信息. 1. 鼠标移到不同行上时背景色改为色值为 #f2f2f2,移开鼠标时则恢复为原背景色 #fff 2. 点击添加按钮,能动态在最后添加一行 3. 点击删除按钮,则删除当前行 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title> new document </ti

二、JavaScript语言--JS基础--JavaScript进阶篇--浏览器对象

1.window对象 window对象是BOM的核心,window对象指当前的浏览器窗口. window对象方法: 2.JavaScript 计时器 在JavaScript中,我们可以在设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行. 计时器类型: 一次性计时器:仅在指定的延迟时间之后触发一次. 间隔性触发计时器:每隔一定的时间间隔就触发一次. 计时器方法: (1) 计时器--指定时间间隔 ① setInterval() 在执行时,从载入页面后每隔指定的时间执行代码. 语法: set

Javascript进阶篇——(DOM—节点---插入、删除和替换元素、创建元素、创建文本节点)—笔记整理

插入节点appendChild()在指定节点的最后一个子节点列表之后添加一个新的子节点.语法: appendChild(newnode) //参数: //newnode:指定追加的节点. 为ul添加一个li,设置li内容为PHP,代码如下: 1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=

编程挑战JavaScript进阶篇(慕课网题目)

编程挑战 现在利用之前我们学过的JavaScript知识,实现选项卡切换的效果. 效果图: 文字素材: 房产: 275万购昌平邻铁三居 总价20万买一居    200万内购五环三居 140万安家东三环    北京首现零首付楼盘 53万购东5环50平    京楼盘直降5000 中信府 公园楼王现房 家居: 40平出租屋大改造 美少女的混搭小窝     经典清新简欧爱家 90平老房焕发新生     新中式的酷色温情 66平撞色活泼家居     瓷砖就像选好老婆 卫生间烟道的设计 二手房: 通州豪华3