2016-10-05 45 views
0

我用下面的JavaScript來打開broswer時設置我的頁面中的一個作爲主頁:的window.onload不工作的Firefox

<script> 
    window.onload = function() { 
     Home(event, 'Home'); 
    } 
</script> 

這裏是如何在主頁功能工作:

function Home(evt, sectionName) { 
    var i, tab, tablinks; 
    tab = document.getElementsByClassName("tab"); 
    for (i = 0; i < tab.length; ++i) { 
     tab[i].style.display = "none"; 
    } 
    tablinks = document.getElementsByClassName("tablinks"); 
    for (i = 0; i < tablinks.length; ++i) { 
     tablinks[i].className = tablinks[i].className.replace(" active", ""); 
    } 
    document.getElementById(sectionName).style.display = "block"; 
    evt.currentTarget.className += " active"; 
} 

和CSS:

tab { 
    display: none; 
    padding: 6px 12px; 
    border-top: none; 
} 

他們在Chrome和邊緣工作的偉大,但在Firefox中進行測試時它不顯示在主頁上,我試着爲它創建另一個css類,但使用display: inline,但這會使主頁始終保持在頂部並出現在每一頁上。我想知道爲什麼它不能在Firefox上正常工作?是否有可能修復它?

+2

簡單地添加與'<體的onload = 「yourFunction中()」>'。其行爲像的window.onload – prasanth

+1

或'document.body.onload',而不是'window.onload' –

+0

@prasad這真的很簡單,工作,謝謝!請問爲什麼會發生這種情況?並且使用'window.onload'設置主頁是不好的? – Phantom

回答

0

添加在JS

var some = function() { 
     Home(event, 'Home'); 
    } 

的Html

<body onload="some()"> 
    <!---your code---> 
    </body> 
+1

這看起來更像是一個不同於答案的遊戲。 – Quentin