问答详情
源自:6-3 使用JS实现函数

safari兼容问题

```html

<!DOCTYPE html>

<html>

<head>

  <meta charset="UTF-8">

  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <meta http-equiv="X-UA-Compatible" content="ie=edge">

  <title>地狗网页导航定位效果</title>

  <style>

  *{

    margin: 0;

    padding: 0;

  }

  body{

    font-size:12px;

    line-height: 1.7;

  }

  li{

    list-style: none;

  }

  #content{

    width: 800px;

    margin: 0 auto;

    padding: 20px;

  }

  #content h1{

    color:#0088bb;

  }

  #content .item{

    padding: 20px;

    margin-bottom: 20px;

    border: 1px dotted #0088bb;

  }

  #content .item h2{

    font-size:16px;

    font-weight: bold;

    border-bottom: 2px solid #0088bb;

    margin-bottom: 10px;

  }

  #content .item li{

    display: inline;

    margin-right: 10px;

  }

  #content .item li a img{

    width: 230px;

    height: 230px;

    border: none;

  }

  #menu {

    position: fixed;

    top: 100px;

    left: 50%;

    margin-left: 400px;

    width: 80px;

  }

  #menu ul li a{

    display:block;

    margin: 5px 0;

    font-size:14px;

    font-weight:bold;

    color:#333;

    width:80px;

    height: 50px;

    line-height: 50px;

    text-decoration: none;

    text-align: center;

  }

  #menu ul li a:hover,

  #menu ul li a.current{

    color:#fff;

    background: #0088bb;

  }

  </style>

  <script>

  function getByClassName(obj,cls)

  {

    var elements=obj.getElementsByTagName("*");

    var result=[];

    for(var i=0;i<elements.length;i++)

    {

      if(elements[i].className==cls)

      {

        result.push(elements[i]);

      }

    }

    return result;

  };

    window.onload=function ()

    {

      window.onscroll=function ()

      {

        var top=document.documentElement?document.documentElement.scrollTop:document.body.scrollTop;

        var  menus=document.getElementById("menu").getElementsByTagName("a");

        var items=getByClassName(document.getElementById("content"),"item");

        var currentId="";

        for(var i=0;i<items.length;i++)

        {

          var _this=items[i];

          var itemTop=_this.offsetTop;

            if(top>itemTop-200)

            {

              currentId="#"+_this.id;

            }

            else

            {

              //js用break jq用 return false

              break;

            }

        }

        for(var i=0;i<menus.length;i++)

        {

          var thisMenu=menus[i];

          if(thisMenu.getAttribute("href")!=currentId)

          {

            // thisMenu.classList.remove("current");

            thisMenu.className-=thisMenu.className.replace("current","");

            // thisMenu.className=" ";

          }

          else

          {

            // thisMenu.classList.add("current");

            thisMenu.className=thisMenu.className+" "+"current";

          }

        }

      };

    };

  </script>

</head>

<body>

  <div id="menu">

    <ul>

      <li><a href="#item1">1F 男装</a></li>

      <li><a href="#item2">2F 女装</a></li>

      <li><a href="#item3">3F 美装</a></li>

      <li><a href="#item4">4F 数码</a></li>

      <li><a href="#item5">5F 香水</a></li>

    </ul>

  </div>

  <div id="content">

    <h1>地狗购物网</h1>

    <div id="item1">

      <h2>1F 男装</h2>

      <ul>

        <li><a href="#"><img src="1F.jpg"></a></li>

        <li><a href="#"><img src="1F.jpg"></a></li>

        <li><a href="#"><img src="1F.jpg"></a></li>

        <li><a href="#"><img src="1F.jpg"></a></li>

        <li><a href="#"><img src="1F.jpg"></a></li>

        <li><a href="#"><img src="1F.jpg"></a></li>

        <li><a href="#"><img src="1F.jpg"></a></li>

        <li><a href="#"><img src="1F.jpg"></a></li>

        <li><a href="#"><img src="1F.jpg"></a></li>

      </ul>

    </div>

    <div id="item2">

      <h2>2F 女装</h2>

      <ul>

        <li><a href="#"><img src="2F.jpg"></a></li>

        <li><a href="#"><img src="2F.jpg"></a></li>

        <li><a href="#"><img src="2F.jpg"></a></li>

        <li><a href="#"><img src="2F.jpg"></a></li>

        <li><a href="#"><img src="2F.jpg"></a></li>

        <li><a href="#"><img src="2F.jpg"></a></li>

        <li><a href="#"><img src="2F.jpg"></a></li>

        <li><a href="#"><img src="2F.jpg"></a></li>

        <li><a href="#"><img src="2F.jpg"></a></li>

      </ul>

    </div>

    <div id="item3">

      <h2>3F 美装</h2>

      <ul>

        <li><a href="#"><img src="3F.jpg"></a></li>

        <li><a href="#"><img src="3F.jpg"></a></li>

        <li><a href="#"><img src="3F.jpg"></a></li>

        <li><a href="#"><img src="3F.jpg"></a></li>

        <li><a href="#"><img src="3F.jpg"></a></li>

        <li><a href="#"><img src="3F.jpg"></a></li>

        <li><a href="#"><img src="3F.jpg"></a></li>

        <li><a href="#"><img src="3F.jpg"></a></li>

        <li><a href="#"><img src="3F.jpg"></a></li>

      </ul>

    </div>

    <div id="item4">

      <h2>4F 数码</h2>

      <ul>

        <li><a href="#"><img src="4F.png"></a></li>

        <li><a href="#"><img src="4F.png"></a></li>

        <li><a href="#"><img src="4F.png"></a></li>

        <li><a href="#"><img src="4F.png"></a></li>

        <li><a href="#"><img src="4F.png"></a></li>

        <li><a href="#"><img src="4F.png"></a></li>

        <li><a href="#"><img src="4F.png"></a></li>

        <li><a href="#"><img src="4F.png"></a></li>

        <li><a href="#"><img src="4F.png"></a></li>

      </ul>

    </div>

    <div id="item5">

      <h2>5F 香水</h2>

      <ul>

        <li><a href="#"><img src="5F.jpg"></a></li>

        <li><a href="#"><img src="5F.jpg"></a></li>

        <li><a href="#"><img src="5F.jpg"></a></li>

        <li><a href="#"><img src="5F.jpg"></a></li>

        <li><a href="#"><img src="5F.jpg"></a></li>

        <li><a href="#"><img src="5F.jpg"></a></li>

        <li><a href="#"><img src="5F.jpg"></a></li>

        <li><a href="#"><img src="5F.jpg"></a></li>

        <li><a href="#"><img src="5F.jpg"></a></li>

      </ul>

    </div>

  </div>

</body>

</html>

```

请问为什么safari不行呢,别的可以

提问者:AllenPeng 2017-11-29 21:22

个回答

  • 书旅
    2017-12-05 14:47:55

    .。。。。。。