拥Bootstrap入怀——导航栏篇


Posted in Javascript onMay 30, 2016

写在前面
在该文中,我结合自己做的一个山水网页来聊一下Bootstrap的使用,网页截图如下:

拥Bootstrap入怀——导航栏篇

完整网页的效果和代码可以点击这里查看或者到CodePen上查看。网页要达到的主要效果包括以下几点:

1、导航栏的登陆、注册按钮点击后弹出登陆、注册modal框,并且登陆、注册窗口可切换,菜单栏为响应式

2、导航栏中的山水选项可下拉,点击下拉中的九寨沟``丽江``水帘洞会定位到相应的tab

3、幻灯片大屏轮播

4、tab页点击切换

下面我们开始拥Bootstrap入怀。

Bootstrap想必小伙伴们都听说过或使用过,在这个网页中,我用的是cdn Bootstrap v3.3.4,点击这里可以下载最新版本的Bootstrap v3.3.5或者点击这里自行到官网上下载,相信总有一款适合你~~~~~~

这篇文章让我们先聊一下导航栏。

导航栏
在使用bs之前首先要引用bs,包括css和js,引用的方式很简单,和引用普通外部文件相同,可以使用cdn链接,也可以放在本地引用。下面给出代码。

<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>myvin's山水</title>
<link rel="stylesheet" href="http://cdn.bootcss.com/bootstrap/3.3.4/css/bootstrap.min.css">

<!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
 <!--[if lt IE 9]>
 <script src="http://cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js"></script>
 <script src="http://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
 <![endif]-->
</head>
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script src="http://cdn.bootcss.com/jquery/1.11.2/jquery.min.js"></script>
<!-- Include all compiled plugins (below), or include individual files as needed -->
<script src="http://cdn.bootcss.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>

在该山水网页例子中,我用的是cdn链接。

同时,因为bs的插件是基于jq的,所以jq也得引入。

先给出导航栏完整代码

<nav class="navbar navbar-default navbar-fixed-top navbar-inverse">
 <div class="container">
  <!-- Brand and toggle get grouped for better mobile display -->
  <div class="navbar-header">
  <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
  <span class="sr-only">Toggle navigation</span>
  <span class="icon-bar"></span>
  <span class="icon-bar"></span>
  <span class="icon-bar"></span>
  </button>
  <a class="navbar-brand" href="#">自己定义一个商标</a>
  </div>

  <!-- 左上角的导航 -->
  <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
  <ul class="nav navbar-nav" >
  <li ><a href="#">主页<span class="sr-only">(current)</span></a></li>
  <li class="dropdown">
  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">山水 <span class="caret"></span></a>
  <ul class="dropdown-menu" role="menu">
   <li><a href="#jiuzhaigou">九寨沟</a></li>
   <li><a href="#lijiang">丽江</a></li>
   <li><a href="#shuiliandong">水帘洞</a></li>
   <li class="divider"></li>
   <li><a href="#">更多..</a></li>
  </ul>
  </li>
  <li data-toggle="modal" data-target="#about"><a href="#" >关于</a></li>
  </ul>


  <form class="navbar-form navbar-right" role="search">
  <div class="form-group">
  <input type="text" class="form-control" placeholder="搜索景点..">
  <button type="button" class="btn btn-default">Go</button>
  </div>
  </form>


  <ul class="nav navbar-nav navbar-right">
  <li data-toggle="modal" data-target="#signin-signup-tab" id="signin-button"><a href="#" >登陆</a></li>
  <li data-toggle="modal" data-target="#signin-signup-tab" id="signup-button"><a href="#" >注册</a></li>
  </ul>
  </div>
 </div>
 </nav>

bs的导航组件都依赖同一个.nav类,代码分开讲解。先看这一段:

<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
 <span class="sr-only">Toggle navigation</span>
 <span class="icon-bar"></span>
 <span class="icon-bar"></span>
 <span class="icon-bar"></span>
</button>

这段代码的作用是viewport减小时,导航栏上的菜单选项会折叠,点击折叠图标,导航栏菜单选项会纵向排列。nav中的.navbar-inverse类是反色,小伙伴们可以把.navbar-inverse类去掉观察下效果。因为我是一个黑色控,所以在这里我用反色。想用其他颜色的,土豪金啊,小伙伴们可以按照自己的口味自行搭配。.navbar-brand类可以用来定义自己网站的商标,我在这里以自己定义一个商标的文字代替,感兴趣的小伙伴可以添加自己的logo。.dropdown-toggle类可以实现一个下拉, .divider类可以实现一个浅深色的分割线。

搜索框和登陆、注册中的.navbar-right类顾名思义就是置右。

data属性
在这里有必要说一下bs的data属性。在bs中,开发者可以仅仅通过data属性来使用bs中的所有js插件,这是bs中的一等api,也经常是我们使用js插件的首选方式。比如上面代码中的data-toggle="collapse"data-toggle="dropdown"等,这些就是bs中的使用js插件的方式。

如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:

以上就是本文的全部内容,希望对大家学习Bootstrap导航栏有所帮助。

Javascript 相关文章推荐
showModelessDialog()使用详解
Sep 07 Javascript
javascript静态的url如何传递
May 03 Javascript
javascript 语法基础 想学习js的朋友可以看看
Dec 16 Javascript
jQuery 幻灯片插件(带缩略图功能)
Jan 24 Javascript
javascript 运算数的求值顺序
Aug 23 Javascript
Js判断参数(String,Array,Object)是否为undefined或者值为空
Nov 04 Javascript
JS实现带有3D立体感的银灰色竖排折叠菜单代码
Oct 20 Javascript
js实现的下拉框二级联动效果
Apr 30 Javascript
jQuery插件开发发送短信倒计时功能代码
May 09 jQuery
LayUi中接口传数据成功,表格不显示数据的解决方法
Aug 19 Javascript
JS数组索引检测中的数据类型问题详解
Jan 11 Javascript
vue elementUI批量上传文件
Apr 26 Vue.js
基于Bootstrap实现tab标签切换效果
Apr 15 #Javascript
JavaScript编写带旋转+线条干扰的验证码脚本实例
May 30 #Javascript
Bootstrap编写导航栏和登陆框
May 30 #Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
May 30 #Javascript
Bootstrap+jfinal实现省市级联下拉菜单
May 30 #Javascript
基于Bootstrap里面的Button dropdown打造自定义select
May 30 #Javascript
BootStrap下jQuery自动完成的样式调整
May 30 #Javascript
You might like
PR值查询 | PageRank 查询
2006/12/20 PHP
说说PHP的autoLoad自动加载机制
2012/09/27 PHP
thinkphp实现面包屑导航(当前位置)例子分享
2014/05/10 PHP
thinkPHP5.0框架配置格式、加载解析与读取方法
2017/03/17 PHP
PHP程序员简单的开展服务治理架构操作详解(三)
2020/05/14 PHP
IE的有条件注释判定IE版本详解(附实例代码)
2012/01/04 Javascript
jQuery下通过replace字符串替换实现大小图片切换
2012/05/22 Javascript
JS Jquery 遍历,筛选页面元素 自动完成(实现代码)
2013/07/08 Javascript
js实现的GridView即表头固定表体有滚动条且可滚动
2014/02/19 Javascript
jQuery实现炫酷的鼠标轨迹特效
2015/02/01 Javascript
Bootstrap入门书籍之(四)菜单、按钮及导航
2016/02/17 Javascript
Vue.js每天必学之内部响应式原理探究
2016/09/07 Javascript
js使用Replace结合正则替换重复出现的字符串功能示例
2016/12/27 Javascript
JS操作xml对象转换为Json对象示例
2017/03/25 Javascript
详谈js遍历集合(Array,Map,Set)
2017/04/06 Javascript
ajax前台后台跨域请求处理方式
2018/02/08 Javascript
Webpack path与publicPath的区别详解
2018/05/03 Javascript
JavaScript async/await原理及实例解析
2020/12/02 Javascript
python中global与nonlocal比较
2014/11/21 Python
Python 列表理解及使用方法
2017/10/27 Python
python 查找文件名包含指定字符串的方法
2018/06/05 Python
python实现一个简单的ping工具方法
2019/01/31 Python
python交互界面的退出方法
2019/02/16 Python
django框架基于模板 生成 excel(xls) 文件操作示例
2019/06/19 Python
Django 框架模型操作入门教程
2019/11/05 Python
Crucial英睿达法国官网:内存条及SSD固态硬盘升级
2018/07/13 全球购物
英国顶级足球鞋的领先零售商:Lovell Soccer
2019/08/27 全球购物
家庭教育先进个人事迹材料
2014/01/24 职场文书
新教师工作感言
2014/02/16 职场文书
汽车销售经理岗位职责
2014/06/09 职场文书
学生安全责任书范本
2014/07/24 职场文书
宾馆仓管员岗位职责
2014/07/27 职场文书
房产公证书格式
2015/01/26 职场文书
护士旷工检讨书
2015/08/15 职场文书
2016春季田径运动会广播稿
2015/12/21 职场文书
logback 实现给变量指定默认值
2021/08/30 Java/Android