先说一下最土的一种方法 :
HTML:
<div><h2 id="tab1" onmouseover="changeTab1()">1</h2><h2 id="tab2" onmouseover="changeTab2()">2</h2><h2 id="tab3" onmouseover="changeTab3()">3</h2></div><div><div id="c1">content1</div><div id = "c2"> content2 </div> <div id = "c3"> content3 </div> </div>
CSS:
H2 {Border-Top: Feste Maisflowerblau 1px; Border-Links: Solid Cornflowerblue 1px; Breite: 50px; Höhe: 25px; Rand: 0; {Hintergrundfarbe: CornflowerBlue;}. Tab-In-Content .show {Anzeige: Block;}JS:
var tab1 = document.getElementById ('tab1'), tab2 = document.getElementById ('tab2'), tab3 = document.getElementById ('tab3'), c1 = document.getElementById ('C1'), C2 = Dokument.GetElementById ('C2'), c3 = document. {tab1.className = 'ausgewählt'; tab2.className = ''; tab3.className = ''; c1.className = 'show'c2.className =' '; '';效果 :
实现 Registerkarte 的切换 , 我们很容易想到的一种方式就是给每一个要控制的标签添加 id , 然后分别编写鼠标事件 , 使用 id 获取每个元素 , 精确地控制每个元素的样式。 精确地控制每个元素的样式。
这种方式的缺点显而易见 , 有几个元素就有几个 id , 每个 Registerkarte 都要编写 Funktion , 里面的方法大同小异。要增加 Registerkarte 的话 , 还要增加 id 和 Funktion , 代码冗余 , 不易扩展。 不易扩展。
第二种较为高明些的方法是编写一个 Funktion , 将每个元素的序号传进去。
Html:
<div><h2 onmouseover="changeTab(0)">1</h2><h2 onmouseover="changeTab(1)">2</h2><h2 onmouseover="changeTab(2)">3</h2></div><div><div>content1</div><div>content2</div><div>content3</div></div>
JS:
var tabs = document.getElementsByClassName ('tab-head') [0] .GetElementsByTagName ('H2'), Inhalt = Dokument.GetElementsByClassName ('tab-content') [0] .GetElementsBytagn ('DivsName; Funktion Changetab (Index) {für (var i = 0, len = 0, len = 0, len = 0, len = tabs.lighte; === Index) {tabs [i] .className = 'ausgewählt'; Inhalt [i] .classname = 'show';} else {tabs [i] .classname = ''; Inhalt [i] .classname = ''; }}}这样就只要写一个 Funktion 了 , 而且不需要 id , 但是还是要按照顺序传递参数。 但是还是要按照顺序传递参数。
第三种方式和第二种基本一样 , 只是参数传递的是 this 指针。
Html:
<div><h2 onmouseover="changeTab(this)">1</h2><h2 onmouseover="changeTab(this)">2</h2><h2 onmouseover="changeTab(this)">3</h2></div><div><div>content1</div><div>content2</div><div>content3</div></div>
JS:
var tabs = document.getElementsByClassName ('tab-head') [0] .GetElementsByTagName ('H2'), Inhalt = Dokument.GetElementsByClassName ('tab-content') [0] .GetElementsByTagn ('DivesName; Funktion Changetab (tab) {für (für (var i = 0, len = 0, len = 0, len = 0, len = 0, len = 0, len = 0, len = 0, len = 0, len = 0, len = 0, len = 0, len = 0, len = 0, len = 0, len = ths.l), i =), len = ths.l), lenw; {if (tabs [i] === Tab.这种方式稍微方便一些 , 只要传递 this 指针 , 不用按照顺序传递序号 , 但这也不是最简便的方式。 但这也不是最简便的方式。
最简便的一种 :
第四种方式 :
Html:
<div> <h2> 1 </h2> <h2> 2 </h2> <h2> 3 </h2> </div> <div> <Viv> content1 </div> <div> content2 </div> <div> content3 </div> </div>
JS:
var tabs = document.getElementsByClassName ('tab-head') [0] .GetElementsByTagName ('H2'), Inhalt = Dokument.GetElementsByClassName ('tab-content') [0] .GetElementsByTagn ('Div'); {tabs [i] .onmouseover = showtab;}}) (); Funktion showtab () {für (var i = 0, len = tabs.length; i <len; i ++) {if (tabs [i] === this) {tabs [i] .classname = 'ausgewählt'; {tabs [i] .className = ''; Inhalt [i] .className = '';}}}这样 js 、 html 、 CSS 就完全分离了 , 通过 Diese 指针就可以判断当前鼠标滑过的是哪一个 Tab 了。 了。
以上所述是小编给大家介绍的最简单纯 JavaScript 实现 Registerkarte 标签页切换的方式 (推荐) , 希望对大家有所帮助 , 如果大家有任何疑问请留言 , 小编会及时回复大家的 , 在此也非常感谢大家对武林网网站的支持! 在此也非常感谢大家对武林网网站的支持! 在此也非常感谢大家对武林网网站的支持! 在此也非常感谢大家对武林网网站的支持! 在此也非常感谢大家对武林网网站的支持! 在此也非常感谢大家对武林网网站的支持! 希望对大家有所帮助 希望对大家有所帮助 , , , 在此也非常感谢大家对武林网网站的支持! 在此也非常感谢大家对武林网网站的支持! 在此也非常感谢大家对武林网网站的支持!)