我有多個鏈接轉到同一頁面,但我希望顯示該頁面的不同部分(最好在頁面頂部)。問題是,這些部分隱藏在頁面加載和它們所在的容器中。我解決了如何讓容器顯示,但它顯示了所有不同的部分,當我只需要點擊一個部分時鏈接,以顯示。即:如何顯示隱藏鏈接中的特定部分
我有以下鏈接:
<a href="serviceCheck1#service1">Service 1</a>
<a href="serviceCheck1#service2">Service 2</a>
<a href="serviceCheck1#service3">Service 3</a>
然後serviceCheck1
頁上我有這樣的HTML:
<div id="service-display-box">
<div id="service-display-box-container">
<div class="service-item-box" id="service1">
<div class="service-item-title">Service 1</div>
</div>
<div class="service-item-box" id="service2">
<div class="service-item-title">Service 2</div>
</div>
<div class="service-item-box" id="service3">
<div class="service-item-title">Service 3</div>
</div>
<div class="service-item-box" id="service4">
<div class="service-item-title">Service 4</div>
</div>
<div class="service-item-box" id="service5">
<div class="service-item-title">Service 5</div>
</div>
<div class="service-item-box" id="service6">
<div class="service-item-title">Service 6</div>
</div>
</div>
</div>
如果我會點擊該內容的鏈接,服務2,我會想要顯示service-display-box
然後顯示#service2
div,那麼它的所有兄弟姐妹都不會顯示。
這裏是我的javascript:
$(function(){
//get the section name from hash
var sectionName = window.location.hash.slice(1);
//then show the section
$('#service-display-box').show();
//$('#' + sectionName).show();
$('#service' + sectionName).show().siblings().hide();
})
/*var index = location.hash.indexOf('#service');
if(index > -1) {
var serviceId = parseInt(location.hash.substring(index));
if(serviceId) {
$('#service-display-box').show();
$('#service' + serviceId).show().siblings().hide();
}
}*/
您的'sectionName'變量在第一行代碼後面會有'「section1」'。所以最後一行會顯示爲'$('#sectionsection1')...',這似乎不是你想要的。 –
@MikeMcCaughan所以你是說改變我的鏈接,只顯示'#1'或從'$('#service'+ sectionName).show()。siblings()。hide(); '? – Becky
我試圖做到這一點,並沒有得到任何不同的結果。我嘗試'$(sectionName).show()。siblings()。hide();' – Becky