【发布时间】:2017-06-21 07:58:14
【问题描述】:
您能帮我解决我的具体问题吗?我想从一个页面创建一个链接,以便在特定选项卡处于活动状态时打开另一个页面,仅使用 JavaScript。
---------------------第 1 页---------
function chooseFloor(evt, oneFloor) {
var i, tabcontent, tablinks;
//Hide all elements with class tabcontent
tabcontent = document.getElementsByClassName('tabcontent');
for (i = 0; i < tabcontent.length; i++){
tabcontent[i].style.display = 'none';
}
//Delete class form all active elements
tablinks = document.getElementsByClassName('tablinks');
for (i = 0; i < tablinks.length; i++){
tablinks[i].className = tablinks[i].className.replace(' active', '');
}
// show tab
document.getElementById(oneFloor).style.display = 'block';
evt.currentTarget.className += ' active';
}
<div class="tab">
<a id="tab1" class="tablinks" onclick="chooseFloor(event, 'One')" href="#first" >One</a>
<a id="tab2" class="tablinks" onclick="chooseFloor(event, 'Two')" href="#second">Two</a>
<a id="tab3" class="tablinks" onclick="chooseFloor(event, 'Three')" href="#third">Three</a>
<a id="tab4" class="tablinks" onclick="chooseFloor(event, 'Four')" href="#fourth">Four</a>
</div>
<div class="container">
<div id="first" class="tabcontent">Content 1</div>
<div id="second" class="tabcontent">Content 2</div>
<div id="Third" class="tabcontent">Content 3</div>
<div id="fourth" class="tabcontent">Content 4</div>
</div>
----------第2页----------
if (location.hash && ['#first', '#second', '#third', '#fourth'].indexOf(location.hash.toLowerCase()) > -1) {
//function for selecting right tab?
}
<div><a href="index.html#first" >Button 1</a></div>
<div><a href="index.html#second" >Button 2</a></div>
<div><a href="index.html#third" >Button 3</a></div>
<div><a href="index.html#fourth" >Button 4</a></div>
【问题讨论】:
-
既然已经有了简单的解决方案,为什么还要使用 javascript?
-
因为我不知道一个简单的解决方案...
-
我在这里很困惑;您的第 2 页是解决方案;如果您希望 page2.html 在第一次点击时打开,只需像在此处一样添加您的 href; href="page2.html#first"
-
好吧,如果我点击 我得到第一页,但标签没有显示.
-
点击链接时会显示什么?
标签: javascript jquery html tabs anchor