久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

JavaScript實(shí)現(xiàn)點(diǎn)擊切換功能

瀏覽:6日期:2023-06-10 14:25:07

本文實(shí)例為大家分享了JavaScript實(shí)現(xiàn)點(diǎn)擊切換功能的具體代碼,供大家參考,具體內(nèi)容如下

在實(shí)際應(yīng)用中,點(diǎn)擊或者移入某一元素上,彈出下拉菜單或者頁(yè)面,是網(wǎng)頁(yè)設(shè)計(jì)的常見(jiàn)操作。

下面我們實(shí)現(xiàn)一種點(diǎn)擊菜單實(shí)現(xiàn)菜單切換,使用js提供三種方式實(shí)現(xiàn)該功能。

JavaScript實(shí)現(xiàn)點(diǎn)擊切換功能

1.使用html設(shè)計(jì)基本結(jié)構(gòu)

<body><h2>多Tab點(diǎn)擊切換</h2><ul id='tab'> <li value='1'>10元套餐</li> <li value='2'>30元套餐</li> <li value='3'>50元包月</li></ul><div id='container'> <div id='content1'> 10元套餐詳情:<br/>&nbsp;每月套餐內(nèi)撥打100分鐘,超出部分2毛/分鐘 </div> <div style='display: none'> 30元套餐詳情:<br/>&nbsp;每月套餐內(nèi)撥打300分鐘,超出部分1.5毛/分鐘 </div> <div style='display: none'> 50元包月詳情:<br/>&nbsp;每月無(wú)限量隨心打 </div></div></body>2.使用css設(shè)計(jì)基本樣式

<style> * { margin: 0; padding: 0; } #tab li { float: left; list-style: none; width: 80px; height: 40px; line-height: 40px; cursor: pointer; text-align: center; } #container { position: relative; } #content1, #content2, #content3 { width: 300px; height: 100px; padding: 30px; position: absolute; top: 40px; left: 0; } #tab1, #content1 { background-color: #ffcc00; } #tab2, #content2 { background-color: #ff00cc; } #tab3, #content3 { background-color: #00ccff; }</style>3.js實(shí)現(xiàn)點(diǎn)擊切換功能

//原生js var container=document.querySelectorAll(’#container>div’) var event_li=document.querySelectorAll(’#tab>li’) var currentindex=0 for(var i=0;i<event_li.length;i++){ event_li[i].num=i event_li[i].onclick=function(){ container[currentindex].style.display=’none’ var index_other=this.num container[index_other].style.display=’block’ currentindex=index_other }}

//jQuery實(shí)現(xiàn),點(diǎn)擊一下父元素,子元素全部display_none,再將點(diǎn)擊事件的元素的子元素設(shè)置為display_blockvar $container=$(’#container>div’)$(’#tab>li’).click(function(){ $container.css(’display’, ’none’) var index=$(this).index() var index_other=$(this).val()-1 $container[index_other].style.display = ’block’})

//jQuery實(shí)現(xiàn),點(diǎn)擊一下父元素,最開(kāi)始的元素的子元素display_none,再將點(diǎn)擊事件的元素的子元素設(shè)置為display_blockcurrentindex=0$(’#tab>li’).click(function(){ $($container[currentindex]).css(’display’, ’none’) var index=$(this).index() $container[index].style.display = ’block’ currentindex=index})4.總結(jié)

(1)、原生js就可以實(shí)現(xiàn)點(diǎn)擊切換的功能,但是使用jQuery后更為容易,語(yǔ)法簡(jiǎn)單,卻功能強(qiáng)大。

(2)、在比較2和3方法,可以看到第2法在觸發(fā)點(diǎn)擊事件后是將所有子元素設(shè)置的顯示方式為none,顯然在子元素較多時(shí),此時(shí)要修改的次數(shù)也相應(yīng)的增加,勢(shì)必影響加載的性能,應(yīng)該優(yōu)化為3方法。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 97热在线观看 | 欧美日本乱大交xxxxx | 超碰最新网址 | 久久se精品一区精品二区 | 午夜窝窝| 一级毛片aaaaaa免费看 | 亚洲网站免费观看 | 日本三级不卡 | 色婷婷av一区二区三区软件 | 黄色片com | wwwjizz日本 | 中文一区 | 中文字幕视频二区 | 最新日韩在线观看视频 | 久久99视频 | 欧美日韩亚 | 国产成人一区 | 国产小视频在线 | 亚洲高清在线 | 欧美日韩在线视频免费 | 精品视频在线观看 | 国产日韩欧美精品一区二区 | 色优久久 | 蜜桃中文字幕 | 国产成人av在线播放 | youjizz国产| 亚洲国产成人av好男人在线观看 | 五月天婷婷国产精品 | 大香一网| 亚洲一区二区三区视频 | 香蕉大人久久国产成人av | 海外中文字幕在线观看 | 国产精品日本一区二区不卡视频 | 在线精品亚洲欧美日韩国产 | 欧美亚洲日本 | 欧美一区二区免费在线 | 中文字幕日韩欧美一区二区三区 | 黄色高清视频 | 国产1区2区3区 | 欧美一级黄色网 | 一级片在线观看视频 |