zoukankan      html  css  js  c++  java
  • 在网页不跳转的前提下更新网页内容(局部刷新)

    在网页不发生跳转的前提下,编写代码实现如下图效果:

    实现代码如下:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="utf-8">
        <title>导航</title>
        <script type="text/javascript" src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
        <style type="text/css">
            /*全局样式*/
            *{
                margin: 0;    /*清除默认外边距*/
                padding: 0;    /*清除默认内边距*/
                list-style: none;    /*清除ul、li便签前面的点*/
            }
            /*页面整体样式*/
            .nav{
                width: 700px; /*宽度700*/
                margin: 0 auto; /*整体居中*/
                margin-top: 20px; /*距离网页顶端20*/
                border: 1px solid blue; /*加一个1px实线蓝色边框*/
            }
            /*公共导航栏ul标签*/
            ul{
                margin-top: 30px; /*距离上部30px*/
            }
            /*导航栏ul标签的li子标签*/
            ul>li{
                float: left; /*整体左浮动*/
                margin-left: 60px;  /*距离左边元素60*/
                width: 100px; /*宽度100*/
                height: 2em; /*高度两个字符*/
                line-height: 2em; /*垂直居中*/
                text-align: center; /*水平居中*/
                border: 1px solid #efefef; /*加一个1px实线浅灰色边框*/
                border-radius: 1em; /*加一个宽一个字符的圆角*/
            }
            /*鼠标悬停到li标签时*/
            .nav>ul>li:hover{
                border: 1px solid pink; /*加一个1px实线粉色边框*/
            }
            /*网页主体内容公共模块*/
            .nav .one{
                width: 600px; /*宽度60*/
                margin:0 50px 50px; /*距离上部0px,距离左右50px,距离下部50px*/
            }
            /*网页主体内容公共模块下的每个子模块公共样式*/
            .nav .one>div{
                padding: 20px; /*内边距20*/
            }
            /*网页主体内容公共模块下的每个子模块公共样式*/
            .nav .one>div>p{
                line-height: 2em; /*垂直居中*/
                text-indent: 2em; /*文本首行缩进2字符*/
            }
        </style>
    </head>
    <body>
        <!-- 整体页面 -->
        <div class="nav">
            <!-- 导航栏 -->
            <ul class="ul">
                <!-- 导航栏子标签 -->
                <li>
                    <span class="one_icon nav_btn" value="one">one</span>
                </li>
                <!-- 导航栏子标签 -->
                <li>
                    <span class="one_icon nav_btn" value="two">two</span>
                </li>
                <!-- 导航栏子标签 -->
                <li>
                    <span class="one_icon nav_btn" value="three">three</span>
                </li>
                <!-- 导航栏子标签 -->
                <li>
                    <span class="one_icon nav_btn" value="four">four</span>
                </li>
            </ul>
    
            <!-- 换行使页面可视化效果更好 -->
            <br><br>
    
            <!-- 分页内容存放区 -->
            <div class="one">
    
                <!-- 第一页内容 -->
                <div class="onePage page">
                    <p>百度、谷歌等网站之所以能很快在海量数据中找到需要的数据,得益于其搜索引擎,本文将介绍搜索引擎的基本知识及中文分词的方法,并通过demo演示如何进行数据检索。</p>
                </div>
    
                <!-- 第二页内容 -->
                <div class="twoPage page" style="display: none; background: pink">
                    <p>本文以示例的形式,由浅入深讲解Nginx限流相关配置,是对简略的 "官方文档" 的积极补充。 Nginx限流使用的是leaky bucket算法,如对算法感兴趣,可移步 "维基百科" 先行阅读。不过不了解此算法,不影响阅读本文。 </p>
                </div>
    
                <!-- 第三页内容 -->
                <div class="threePage page" style="display: none; color: teal">
                    <p>引言 网络上版本管理系统之争持久而喧嚣,依照声量来讲目前应该是Git占了较大的优势。不过我们本文的关注点在于代码的分支管理模型,因为大家无论是用SVN或者Git,目的是为了解决研发过程管理中的实际问题。我这里整理几种分支管理模型,这样大家可以对照自己的痛点选择合适的模型。</p>
                </div>
    
                <!-- 第四页内容 -->
                <div class="fourPage page" style="display: none; border: 1px solid #ccc">
                    <p>本文是内部的一次分享沉淀,偏向基础但是涉及了一些有意思的细节,文笔有限,才疏学浅,文中若有不正之处,万望告知。 前端的一大工作内容就是去兼容页面在不同内核的浏览器,不同的设备,不同的分辨率下的行为,使页面的能正常工作在各种各样的宿主环境当中。</p>
                </div>    
            </div>
        </div>
    
        <!-- 不需要网页跳转,可分页显示内容的JS部分 -->
        <script type="text/javascript">
            
            // 定义按钮函数
            $('.nav_btn').click(function(){
    
                // 获取按钮名字
                var pageName = $(this).attr('value');
                // 获取按钮类名
                var pageClass = '.'+pageName+'Page';
    
                // 背景跳转
                $('.nav_btn').css('background','');
    
                // 非按钮对应页面隐藏
                $('.page').css('display','none');
    
                // 按钮对应页面显示
                $(pageClass).css('display','block');
            })
        </script>
    </body>
    </html>
  • 相关阅读:
    C++-struct类的新特性当class用
    rbenv、fish 與 VSCode 設置之路
    angularJS进阶阶段(4)
    插入排序
    Vimium
    Design Patterns 25
    Mysql(或者sqlite), Mongo中update Column + 1
    Hexo
    继承
    Gradle的依赖方式——Lombok在Gradle中的正确配置姿势
  • 原文地址:https://www.cnblogs.com/lidyfamily/p/11466253.html
Copyright © 2011-2022 走看看