js 函数 实现导航选项卡功能

     js 实在是做web特效的好东西,通过这个选项卡可以在一个网页载入大量的内容 ,函数具体如下:

<script type="text/javascript">


function nTabs(thisObj,Num){


if(thisObj.className == "active")return;//  classname 属性可以取得对象的class 值


var tabObj = thisObj.parentNode.id; //得到父节点的id 比如  <body><title></title></body>,title 的父节点是body


var tabList = document.getElementById(tabObj).getElementsByTagName("li");


for(i=0; i <tabList.length; i++)
{
if (i == Num)
{
   thisObj.className = "active";


      document.getElementById(tabObj+"_Content"+i).style.display = "block";


}else{


   tabList[i].className = "normal";


   document.getElementById(tabObj+"_Content"+i).style.display = "none";
}
}
}
</script>

 

 

 <div class="TabTitle">
                <ul id="myTab0">
                  <li class="active" οnmοuseοver="nTabs(this,0);"><span style="margin-right:12px;">二手交易</span></li>
                  <li class="normal" οnmοuseοver="nTabs(this,1);"><span style="margin-right:12px;">游戏</span></li>
                  <li class="normal" οnmοuseοver="nTabs(this,2);"><span style="margin-right:12px;">交友</span></li>
                  <li class="normal" οnmοuseοver="nTabs(this,3);"><span style="margin-right:12px;">微博</span></li>
                  <li class="normal" οnmοuseοver="nTabs(this,4);"><span style="margin-right:12px;">商城</span></li>
                  <li class="normal" οnmοuseοver="nTabs(this,5);"><span style="margin-right:12px;">论坛</span></li>
                </ul>
  </div>

 

 

 

 

 <!-- 内容开始 -->
              <div class="TabContent">
                   <div id="myTab0_Content0"></div>

                   <div id="myTab0_Content1"  class="none"></div>

                  <div id="myTab0_Content2"  class="none"></div>

              </div>

            

                
    

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,选项卡功能可以通过以下步骤来实现: 1. 创建一个包含选项卡标题的组件,例如 `TabTitle` 组件。 2. 创建一个包含选项卡内容的组件,例如 `TabContent` 组件。 3. 在父组件中,使用 `TabTitle` 和 `TabContent` 组件来创建选项卡。 4. 在父组件中创建一个状态变量来跟踪当前选项卡的索引。 5. 在 `TabTitle` 组件中,添加点击事件处理程序,当点击选项卡标题时,将当前选项卡的索引更新为所点击的选项卡的索引,并通过回调函数将更新后的索引传递给父组件。 6. 在 `TabContent` 组件中,根据当前选项卡的索引显示对应的内容。 下面是一个简单的示例代码: ```jsx import { useState } from 'react'; function TabTitle({ title, index, activeIndex, onClick }) { const isActive = index === activeIndex; return ( <div onClick={() => onClick(index)}> <h2 style={{ color: isActive ? 'red' : 'black' }}>{title}</h2> </div> ); } function TabContent({ content, index, activeIndex }) { if (index !== activeIndex) return null; return <div>{content}</div>; } function Tabs() { const [activeIndex, setActiveIndex] = useState(0); const titles = ['Tab 1', 'Tab 2', 'Tab 3']; const contents = ['Content 1', 'Content 2', 'Content 3']; return ( <div> {titles.map((title, index) => ( <TabTitle key={index} title={title} index={index} activeIndex={activeIndex} onClick={(index) => setActiveIndex(index)} /> ))} {contents.map((content, index) => ( <TabContent key={index} content={content} index={index} activeIndex={activeIndex} /> ))} </div> ); } ``` 在上面的代码中,我们创建了 `TabTitle` 和 `TabContent` 组件来渲染选项卡的标题和内容。然后在 `Tabs` 组件中,我们使用 `useState` Hook 来创建一个状态变量 `activeIndex`,它用于跟踪当前选项卡的索引。我们使用 `map` 方法来遍历选项卡的标题和内容,然后分别创建 `TabTitle` 和 `TabContent` 组件,并通过回调函数将更新后的索引传递给父组件。最后,我们根据当前选项卡的索引来显示对应的内容。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值