2016-11-15 81 views
0

我有一個帶有選項卡的網站,其中每個選項卡實際上都在同一個表中,並且具有顯示與否的屬性。然後,當您按下該選項卡時,javascript函數會更改該屬性。通過URL調用JavaScript函數

功能是這樣的:

function showHide(ID) { 
switch (ID) { 
    case 'main': 
    document.getElementById('main').style.display = 'block'; 
    document.getElementById('abstracts').style.display = 'none'; 
    break; 
    case 'abstracts': 
    document.getElementById('main').style.display = 'none'; 
    document.getElementById('abstracts').style.display = 'block'; 
    break; 
} 
return true; 
} 

然後,選項卡的標題是一樣的東西

<a href="" onclick="showHide('main');return false;">Main</a> 

和標籤是

<tr id="main"> ... </tr> 

的事情是,我希望能夠有一個標籤的URL,例如http://mypage.com#main或類似的東西那麼,所以當我進入該URL時,標籤主要被集中。

這可能嗎?

+1

是的,閱讀頁面加載時的哈希.... – epascarello

回答

3

在頁面底部或window.onload,讀取散列並調用您的方法。

(function(){ 
    var hash = window.location.hash.substr(1); 
    showHide(hash); 
}()); 

如果您想要更改網址,您可能要刪除return false

+0

完美的作品。謝謝! –

0

你可以在這裏使用hashchange事件監聽器。 例如:window.addEventListener(「hashchange」,doThisWhenTheHashChanges,false);