1、做一个导航栏,并设置跳转链接的<a>标签的name属性或id

此处演示name标签

 <!-- 导航条 -->
<nav id="navAjax" class="navbar navbar-expand-lg navbar-dark bg-dark" style="z-index:10;">
<a class="navbar-brand">学生管理系统</a>
<button class="navbar-toggler" type="button" data-toggle="collapse"
data-target="#navbarSupportedContent"
aria-controls="navbarSupportedContent" aria-expanded="false"
aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button> <div class="collapse navbar-collapse " id="navbarSupportedContent">
<ul class="navbar navbar-nav mr-auto container">
<li class="nav-item active"><a class="nav-link" name="">主页
<span class="sr-only">(current)</span>
</a></li>
<li class="nav-item"><a class="nav-link" href="#">基本信息</a></li>
<li class="nav-item dropdown"><a
class="nav-link dropdown-toggle" href="#" id="navbarDropdown"
role="button" data-toggle="dropdown" aria-haspopup="true"
aria-expanded="false"> 系统查询 </a>
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="#">基本信息</a> <a class="dropdown-item"
href="#">成绩信息</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">汇总信息</a>
</div></li>
<li class="nav-item" ><a name="changePassword.jsp" class="nav-link">修改密码</a></li>
<li class="nav-item col-6"></li>
<!-- session -->
<li class="nav-item mf-auto" >
<a id="loginSession" name="login.jsp" class="nav-link" tabindex="1" href="./login.jsp">登陆</a></li>
<li><a id="register" name="register.jsp" class="nav-link" >注册</a></li>
<!-- <script>userName("${session_user.name}");</script> -->
</ul>
</div>
</nav>

2、创建iframe标签,并设置具体属性

iframe各属性值参考如下链接:https://www.w3school.com.cn/tags/tag_iframe.asp

<iframe src="" height="720px" width="100%" name="demo" frameborder="0" scrolling="no"
sandbox="allow-same-origin allow-top-navigation allow-forms allow-scripts">
</iframe>

3、使用jq对每个窗体的事件进行绑定

$(document).ready(function(){
//设置并获取Session
localStorage.setItem("session_name", "${session_user.name}");
var name = localStorage.getItem("session_name");
// 判空
if(name == null || name == "" || name.length == 0){
// 设置成未登录状态
$("#loginSession").text("登录");
$("#register").text("注册");
$("#register").attr("name","register.jsp");
$("#register").attr("href","register.jsp");
$("#register").attr("target","_top");
}else{
// 登录成功
$("#loginSession").text(name);
$("#loginSession").attr("name","");// 取消点击事件
$("#register").text("退出");
$("#register").attr("name","LogoutServlet");
} // 导航栏点击,下面jframe的src改变,实现页面刷新功能
$("a").click(function(){
var src = $(this).attr("name");
$("iframe").attr("src",src);
});
});

4、对特殊的<a>标签进行处理

这里是防止退出登录后重新登录产生两个导航栏,具体情况根据个人项目自行编写

	// 对退出按钮绑定事件,只要点击该按钮,就恢复成注册按钮
$("#register").click(function(){
var name = $(this).attr("name");
if(name == "LogoutServlet"){
$("#loginSession").text("登录");
$("#register").text("注册");
$("#register").attr("name","register.jsp");
$("#register").attr("href","LogoutServlet");
$("#register").attr("target","_top");
}
});

5、注意事项

iframe出现两个导航栏时,设置对应<a>标签的target值解决,如上面代码中设置target值为"_top"。若部分<a>标签不跳转则可不设置标签的name属性或id也可以让name属性为空或id为空。

若要测试这些代码,得导入bootstrap4得css和js包。

最新文章

  1. 高通AR和友盟SDK的AndroidManifest.xml合并
  2. JQuery+ajax+jsonp 跨域访问
  3. Sass关于颜色函数的乐趣
  4. MyEclipse自动生成hibernate实体类和配置文件攻略
  5. ChartDirector应用笔记(二)
  6. 【竞品分析】Android音乐播放器的竞品分析
  7. 走进C标准库(1)——assert.h,ctype.h
  8. Android - View Alpha值
  9. Java 并发 关键字volatile
  10. WebGL光照阴影映射
  11. Socket阻塞模式和非阻塞模式的区别
  12. Log4j Append属性指定是否追加内容
  13. Linux - PWM的驱动编写【转】
  14. centos 7 源码包安装、卸载nginx
  15. HDU1520:Anniversary party(树形dp第一发)
  16. tensorflow学习笔记(3)前置数学知识
  17. Linux操作系统的内存使用方法详细解析
  18. Android 网络调试 adb tcpip 开启方法
  19. git不同分支局部代码合并 git cherry-pick
  20. 在javascript中,我怎么得到下拉条顶端与当前可视的顶端高度的距离,不是和网页顶端的距离

热门文章

  1. [Ubuntu]解决&quot;系统的网络服务与此版本的网络管理器不兼容&quot;提示
  2. Docker快速上手之搭建SpringBoot项目
  3. BaseAdapter的三种表达式分析,startActivityForResult的使用
  4. Arduino系列之按键模块(二)
  5. 好机会,我要帮女同事解决Maven冲突问题
  6. ubuntu 14.04 如何设置静态ip
  7. python学习记录(六)
  8. python学习记录(五)
  9. Dubbo 服务 IP 注册错误踩坑经历
  10. bootstrap 按钮组件