H5+javascript+jQuery的单页面应用(SPA)(五)

前言

本文将优化 SPA 前端页面逻辑,

  1. 登录成功后,Login 菜单转变为 Logout;
  2. 点击 Logout 后,Member 页面也要退出,还原登入前的页面内容

优化前端页面

之前的文章为了方便用了静态方式编写,为了项目日后复杂度提升的时候,能有更好的兼容和实施效率,优化代码让项目更有实施弹性。

头部菜单以 Unordered List 实现

首先,修改 index.html <header><nav>。增加 nav id 及把原先的<div>内容更换成 <ul></ul>

<header>
    <nav id="headerNavigationMenu">
        <ul></ul>
    </nav>
</header>

把原来 index.css 关于 #headerNavigation div 相关的 css 全部删掉,换成如下:

#headerNavigationMenu ul{
   
    float: right;
    margin: 0; padding: 0;
    margin-right: 20px;
    cursor: pointer;
    font-weight:700;
    color:#555555ee;
}
#headerNavigationMenu ul li, #headerNavigationMenu ul span{
   
    list-style: none;
    margin: 0; padding: 0;
    float: left;
}
#headerNavigationMenu ul li.selected{
   
    font-weight: 700;
    color:#f36c01ee;
}
#headerNavigationMenu ul li.onHover{
   
    font-weight: 700;
    color:#000000;
}

最后在 index.js 里面作一下改动。因为修改的代码部分有点多,这里直接上整份 index.js 内容。可以自行比对一下:

$(function() {
   
    
    // 定义默认内容页面及菜单
    const defaultPage = "Login"
    // 定义当前选定的菜单ID
    let activeNavId = defaultPage
    
    var navIds = {
   }
    navIds.navHomeLink = "Home"
    navIds.navAboutUsLink = "AboutUs"
    navIds.navLoginLink = "Login"
    navIds.navMemberLink = "Member"
    
    // build a navigation menu link array
    // to filter out false click events from $(document).click(function(e) {})
    // if user not clicking on navigation menu, no change from displaying page
    let navItems = []
    for (let key in navIds) {
   
        navItems.push(key)
    }

    for(let key in navIds){
   
        
        $('#headerNavigationMenu ul'
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值