JS实现百度新闻导航栏效果

 更新时间:2021年10月26日 10:25:53   作者:只想过平静生活的普通上班族  
这篇文章主要为大家详细介绍了JS实现百度新闻导航栏效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了JS实现百度新闻导航栏效果的具体代码,供大家参考,具体内容如下

最近在学Web前端,用js简单实现了百度新闻导航栏的效果。当鼠标移动到某一选项上方时,会有一个红色背景块滑动到当前选项上。当点击某一选项后,固定的红色背景块位置会移动到当前选项,意为当前选项被选中。话不多说,代码如下

body部分

<div class="box">
        <!--两个红色背景块-->
        <!--随鼠标移动的背景块-->
        <div id="move"></div>
        <!--鼠标点击后固定在某处的背景块-->
        <div id="fixed"></div>
        <a href="#">主页</a>
        <a href="#">国内</a>
        <a href="#">国际</a>
        <a href="#">军事</a>
        <a href="#">财经</a>
        <a href="#">娱乐</a>
        <a href="#">体育</a>
        <a href="#">互联网</a>
        <a href="#">科技</a>
        <a href="#">游戏</a>
        <a href="#">女人</a>
        <a href="#">汽车</a>
        <a href="#">房产</a>
</div>

css部分

 *{
            margin: 0;
            padding: 0;
        }
        .box{
            top:100px;
            width: 790px;
            height: 30px;
            font-size: 0;
            position: relative;
            margin: 0 auto;
            background-color: #01204f;
        }
        a{
            display: inline-block;
            position: relative;
            width: 60px;
            height: 30px;
            line-height: 30px;
            color: white;
            font-size: 16px;
            text-decoration: none;
            text-align: center;
            transition: all 0.6s;
        }
        #move{
            position: absolute;
            background-color: red;
            top: 0px;
            left: 0px;
            width: 60px;
            height: 30px;
            transition: all 0.6s;
        }
        #fixed{
            position: absolute;
            background-color: red;
            top: 0px;
            left: 0px;
            width: 60px;
            height: 30px;
        }

js部分

window.onload = function () {
      let move = document.getElementById("move");//滑动的背景块
      let fixed = document.getElementById("fixed");//固定在某处的背景块
      let aList = document.getElementsByTagName("a");//a标签列表
      let left = move.offsetLeft + "px";//滑动背景块的初始位置
      //使所有a标签绑定移入、移出、单击事件
      for (let i = 0; i < aList.length; i++) {
                aList[i].onmouseover = function () {
                    // 鼠标移入某个a标签时,滑动背景块滑到当前a标签的位置
                    move.style.left = aList[i].offsetLeft + "px";
                }
                aList[i].onmouseout = function () {
                    // 鼠标移出a标签时,滑动背景块返回初始位置
                    move.style.left = left;
                }
                aList[i].onclick = function () {
                    // 某个a标签被点击后,固定背景块移动到当前a标签的位置
                    fixed.style.left = aList[i].offsetLeft + "px";
                    // 将滑动背景块的初始位置更新为当前a标签的位置
                    left = aList[i].offsetLeft + "px";
                }
            }
        }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • js动态切换图片的方法

    js动态切换图片的方法

    这篇文章主要介绍了js动态切换图片的方法,包含完整的css文件与js文件实现技巧,非常具有实用价值,需要的朋友可以参考下
    2015-01-01
  • JS获取本周周一,周末及获取任意时间的周一周末功能示例

    JS获取本周周一,周末及获取任意时间的周一周末功能示例

    这篇文章主要介绍了JS获取本周周一,周末及获取任意时间的周一周末功能,结合实例形式分析了js通过扩展实现针对日期的运算相关技巧,需要的朋友可以参考下
    2017-02-02
  • javascript 仿QQ滑动菜单效果代码

    javascript 仿QQ滑动菜单效果代码

    javascript 仿QQ滑动菜单效果代码,非常漂亮的代码,学习js的朋友可以参考下代码风格。
    2010-09-09
  • JS控制按钮10秒钟后可用的方法

    JS控制按钮10秒钟后可用的方法

    这篇文章主要介绍了JS控制按钮10秒钟后可用的方法,涉及JavaScript基于时间函数控制页面元素样式动态变换的技巧,需要的朋友可以参考下
    2015-12-12
  • js实现使用鼠标拖拽切换图片的方法

    js实现使用鼠标拖拽切换图片的方法

    这篇文章主要介绍了js实现使用鼠标拖拽切换图片的方法,涉及javascript操作图片实现轮播效果的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-05-05
  • IE和Firefox的Javascript兼容性总结[推荐收藏]

    IE和Firefox的Javascript兼容性总结[推荐收藏]

    长久以来JavaScript兼容性一直是Web开发者的一个主要问题。在正式规范、事实标准以及各种实现之间的存在的差异让许多开发者日夜煎熬
    2011-10-10
  • JavaScript 九种跨域方式实现原理

    JavaScript 九种跨域方式实现原理

    这篇文章主要介绍了JavaScript 九种跨域方式实现原理,什么是跨域,以及有哪几种跨域方式,这是本文要探讨的内容。小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-02-02
  • JS检测是否可以访问公网服务器功能代码

    JS检测是否可以访问公网服务器功能代码

    检测AC是否放行成功,是否可以访问公网阿里云服务器。下面给大家分享JS检测是否可以访问公网服务器功能代码,需要的的朋友参考下吧
    2017-06-06
  • JS高阶函数原理与用法实例分析

    JS高阶函数原理与用法实例分析

    这篇文章主要介绍了JS高阶函数原理与用法,结合实例形式分析了javascript函数式编程、一等函数、高阶函数等相关概念、原理及使用技巧,需要的朋友可以参考下
    2019-01-01
  • TypeScript 映射类型详情

    TypeScript 映射类型详情

    这篇文章主要介绍了TypeScript 映射类型详情,一个类型需要基于另外一个类型, 又不想拷贝一份,这个时候可以考虑使用映射类型,映射类型建立在索引签名的语法上,下面文章我们就从回顾下索引签名展开TypeScript 映射类型的相关资料,需要的朋友可以参考一下
    2021-12-12

最新评论