亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

10-1編程挑戰。js部分,有什么問題,為什么不實現選項卡變換效果

<!DOCTYPE html>

<html>

<head>

? ? <meta charset="UTF-8">

? ? <title>實踐題 - 選項卡</title>

? ? <style type="text/css">

? ? ?/* CSS樣式制作 */ ?

? ? ? ?*{

? ? ? ? ? ?margin:0;

? ? ? ? ? ?padding:0;

? ? ? ? ? ?font-family:"微軟雅黑";

? ? ? ?}

? ? ? ?#content{

? ? ? ? ? ?height:600px;

? ? ? ? ? ?width:600px;

?position:absolute;

?top:50px;

?left:50%;

?margin-left:-200px;

? ? ? ?}

? ? ? ?ul{

? ? ? ? ? ?position:absolute;

? ? ? ? ? ?margin-left:10px;

? ? ? ? ? ?z-index:100;

? ? ? ?}

? ? ? ?ul li{

? ? ? ? ? ?list-style:none;

? ? ? ? ? ?font-size:20px;

? ? ? ? ? ?height:40px;

? ? ? ? ? ?width:100px;

? ? ? ? ? ?line-height:40px;

? ? ? ? ? ?text-align:center;

? ? ? ? ? ?border:2px solid gray;

? ? ? ? ? ?display:inline-block;

? border-bottom:none;

??

? ? ? ?}

? ? ? ?div div{

? ? ? ? ? ?border:2px solid blue;

? border-top:4px solid #cc9900;

? display:none;

? ? ? ? ? ?position:absolute;

? top:44px;

? ? ? ? ? ?height:150px;

? ? ? ? ? ?width:400px;

? padding:10px 15px 10px 10px;

? font-size:18px;


? ? ? ?}

? ul .selected{

border-top:4px solid #cc9900;

border-bottom:4px solid white;


? }

? ? ? ?div .selected{

display:inline-block;

? }

? ? </style>

? ? <script type="text/javascript">

? ? ? ? ?// JS實現選項卡切換

??


//選項卡實現思路

//第一步:

//鼠標滑倒某一個li上,先讓所有li都沒有select樣式,然后再讓當前li有select樣式


//第二步:要操作誰就線獲取誰


var div1=document.getElementById("content");

var lis=div1.getElementsByTagName("li");

var divs=div1.getElementsByTagName("div");


//第三步:給我們的li綁定鼠標移上去的事件


for(i=0;i<lis.length;i++){

lis[i].k=i;

lis[i].onmouseover=function(){

changecolor(this.k);

}

}


//第四步:制定一個功能方法,實現我們的需求

//nIndex是我們定義形參,代表當前被選擇的元素索引


function changecolor(k){


for(var j=0;j<lis.length;j++){

lis[j].className="";

divs[j].className="";

}

lis[k].className="selected";

divs[k].className="selected";

}







? ? </script>

?

</head>

<body>

<!-- HTML頁面布局 -->

<div id="content">

? ? <ul>

? ? ? ? <li>房產</li>

? ? ? ? <li>家居</li>

? ? ? ? <li>二手房</li>

? ? </ul>

? ? <div>275萬購昌平鄰鐵三居 總價20萬買一居<br/>

? ? 200萬內購五環三居 140萬安家東三環<br/>

? ? 北京首現零首付樓盤 53萬購東5環50平<br/>

? ? 京樓盤直降5000 中信府 公園樓王現房</div>

? ? <div> 40平出租屋大改造 美少女的混搭小窩<br/>

? ? ?經典清新簡歐愛家 90平老房煥發新生<br/>

? ? ?新中式的酷色溫情 66平撞色活潑家居<br/>

? ? ?瓷磚就像選好老婆 衛生間煙道的設計</div>

? ? <div> ?通州豪華3居260萬 二環稀缺2居250w甩<br/>

? ? ?西3環通透2居290萬 130萬2居限量搶購<br/>

? ? ?黃城根小學學區僅260萬 121平70萬拋!<br/>

? ? ?獨家別墅280萬 蘇州橋2居優惠價248萬</div>

</div>


?

</body>

</html>


正在回答

1 回答

因為在加載var lis=div1.getElementsByTagName("li");時,瀏覽器還未加載到li標簽,所以li是未定義的,只要把js部分放在瀏覽器加載完頁面后加載即可正常實現“window.onload可實現此功能”

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468832    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

10-1編程挑戰。js部分,有什么問題,為什么不實現選項卡變換效果

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號