滚动效果的Javascript代码适用于Safari/chrome,而不是firefox/opera

滚动效果的Javascript代码适用于Safari/chrome,而不是firefox/opera,javascript,html,css,browser,scrolltop,Javascript,Html,Css,Browser,Scrolltop,我有一个带有导航条的网页,它最初位于页面顶部下方75px左右。我写了一个脚本,当导航条碰到浏览器窗口的顶部时,它会将导航条固定到浏览器窗口的顶部。这在safari/chrome中运行良好,但在其他浏览器中不会触发此效果。酒吧永远不会切换到它的固定模式。我不熟悉html/css/javascript,所以问题可能很简单。代码如下: <head> <link rel="stylesheet" href="foo_css.css" /> <script type="tex

我有一个带有导航条的网页,它最初位于页面顶部下方75px左右。我写了一个脚本,当导航条碰到浏览器窗口的顶部时,它会将导航条固定到浏览器窗口的顶部。这在safari/chrome中运行良好,但在其他浏览器中不会触发此效果。酒吧永远不会切换到它的固定模式。我不熟悉html/css/javascript,所以问题可能很简单。代码如下:

<head>
<link rel="stylesheet" href="foo_css.css" />
<script type="text/javascript">
function window_onload() {
    window.addEventListener("scroll",navbar_reset_top,false);
}

var navbar_top=75;

function navbar_reset_top() {
    var scrollTop=document.documentElement.scrollTop||document.body.scrollTop;
    if(scrollTop>navbar_top&&nav.className==="navbar_absolute") {
        document.getElementById("nav").className="navbar_fixed";
    } 
    else if(scrollTop<navbar_top&&nav.className==="navbar_fixed") {
        document.getElementById("nav").className="navbar_absolute";
    }
 }
 </script>

 </head>
 <body onload="javascript:window_onload();">
 <div id="nav" class="navbar_absolute">
 <ul>

这里有一个稍加修改的版本,可以在Firefox中使用

  var nav, navbar_top = 75;
  function window_onload() {
      nav = document.getElementById("nav");
      window.addEventListener("scroll", navbar_reset_top, false);
  }

  function navbar_reset_top() {

      var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;

      // you won't need the && nav.className==="navbar_absolute" part
      if(scrollTop > navbar_top && nav.className==="navbar_absolute") {
          nav.className="navbar_fixed";
      }
      // you don't need the check for nav.className==="navbar_fixed" part either
      else if(scrollTop < navbar_top && nav.className==="navbar_fixed") {
          nav.className="navbar_absolute";
      }
   }
var-nav,navbar\u-top=75;
函数窗口_onload(){
nav=document.getElementById(“nav”);
window.addEventListener(“滚动”,导航栏重置,顶部,错误);
}
功能导航栏\重置\顶部(){
var scrollTop=document.documentElement.scrollTop | | document.body.scrollTop;
//您不需要&&nav.className==“navbar\u绝对”部分
如果(scrollTop>navbar\u top&&nav.className===“navbar\u absolute”){
nav.className=“navbar\u fixed”;
}
//您也不需要检查nav.className==“navbar\u fixed”部分
else if(scrollTop
  var nav, navbar_top = 75;
  function window_onload() {
      nav = document.getElementById("nav");
      window.addEventListener("scroll", navbar_reset_top, false);
  }

  function navbar_reset_top() {

      var scrollTop = document.documentElement.scrollTop || document.body.scrollTop;

      // you won't need the && nav.className==="navbar_absolute" part
      if(scrollTop > navbar_top && nav.className==="navbar_absolute") {
          nav.className="navbar_fixed";
      }
      // you don't need the check for nav.className==="navbar_fixed" part either
      else if(scrollTop < navbar_top && nav.className==="navbar_fixed") {
          nav.className="navbar_absolute";
      }
   }