为了账号安全,请及时绑定邮箱和手机立即绑定

使当前活动的网站页面不在导航栏中重新加载

使当前活动的网站页面不在导航栏中重新加载

PHP
饮歌长啸 2023-05-26 16:18:25
我首先要说我是 PhP 的新手,但我正在尝试使用它来设置将我的标题从 1 个文件加载到我的所有网站页面中。我已经成功地做到了这一点,并且还能够将 .active 类设置为当前处于活动状态的任何页面。我的问题是,如果出于个人喜好,我可以使活动页面在导航栏中单击时不重新加载。到目前为止,我只是通过将 href 链接设置为“#”来完成此操作,但如果我从每个文件加载相同的标头,我就无法真正做到这一点。在我的 header.php 文件中有没有其他方法可以用 PhP 做到这一点?请让我知道,客气一点,我又是全新的,这是我的代码......索引.PHP<html>    <head>        <!-- Meta & Other -->        <title>Infamous | Home</title>        <meta charset="UTF-8">        <meta http-equiv="X-UA-Compatible" content="IE=edge">        <meta name="description" content="Infamous official website">        <meta name="keywords" content ="Infamous, Minecraft, Server, Game, Gaming">        <meta name="author" content="MrWardy">        <meta name="viewport" content="width=device-width, initial-scale=1.0">        <!-- CSS -->        <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css" integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous">        <link rel="stylesheet" href="Stylesheets/header.css">        <!-- Fonts -->        <script src="https://kit.fontawesome.com/35fad75205.js" crossorigin="anonymous"></script>        <link href="https://fonts.googleapis.com/css2?family=Kanit&display=swap" rel="stylesheet">    </head>    <body>        <?php $page = 'home'; include('header.php'); ?>        <!-- JavsScript -->        <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>        <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>        <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>    </body></html>
查看完整描述

1 回答

?
波斯汪

TA贡献1811条经验 获得超4个赞

这样您就可以添加许多您想要的页面,使用 array('page'=>'IDENTIFIER','title'=>'TITLE','link'=>'link','icon'=>'icon')逗号分隔。


标题.php


<nav id="header-nav" class="navbar-nav">

   <div class="container grid-container">

<?php

$pages=array(

    array('page'=>'home','title'=>'Home','link'=>'./home.php','icon'=>'fas fa-home'),

    array('page'=>'apply','title'=>'Apply','link'=>'./apply.php','icon'=>'fa-user'),

    array('page'=>'other','title'=>'Other page','link'=>'./other_page.php','icon'=>'fa-user'),

    array('page'=>'youtube','title'=>'Watch video','link'=>'https://www.youtube.com/channel/UCFvs3IZNgziCe0WARpJpYVw','icon'=>'fab fa-youtube','newtarget'=>1)

);


foreach($pages as $pg){

    echo $pg['page']==$page?

    '<a class="navlink active"><i class="'.$pg['icon'].'"></i> '.$pg['title'].'</a>':

    '<a class="navlink" href="'.$pg['link'].'" '(.isset($pg['newtarget'])?' target="_blank"':'').'><i class="'.$pg['icon'].'"></i> '.$pg['title'].'</a>';

}

?>

    </div>

  </nav>

 <img class="heading-banner mx-auto d-block" src="./Images/banner.png" alt="Infamous banner" />

</header>

如果您愿意,可以将光标样式添加到 navlink 类,这样,即使没有 href,您也会有一个漂亮的光标。


查看完整回答
反对 回复 2023-05-26
  • 1 回答
  • 0 关注
  • 106 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信