js控制公共模板中,不同页面中的导航选中效果-判断当前的url

用js的做法也很多。比较推荐的方法是判断当前的url,然后根据url在nav中的位置,来对nav中的某个导航增加选中样式,代码如下:

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <title>Document</title>
 </head>
 <body>
<style>
.active {
    color: red;
}
</style>
<ul id="tab2">
    <li><a href="index.html">首页</a></li>
    <li><a href="news.html">新闻</a></li>
    <li><a href="about.html">关于</a></li>
    <li><a href="job.html">工作</a></li>
    <li><a href="ad.html">广告</a></li>
    <li><a href="contactus.html">联系我们</a></li>
</ul>
<script>
//这里的js, 可以做为一个外部的JS文件, 然后由上面这些页面统一引入即可.
(function(){
    var tDiv = document.getElementById("tab2"),
        links = tDiv.getElementsByTagName("a"),
        index = 0,//默认第一个菜单项
        url = location.href.split(‘?‘)[0].split(‘/‘).pop();//取当前URL最后一个 / 后面的文件名,pop方法是删除最后一个元素并返回最后一个元素

    if(url){//如果有取到, 则进行匹配, 否则默认为首页(即index的值所指向的那个)
        for (var i=links.length; i--;) {//遍历 menu 的中连接地址
            if(links[i].href.indexOf(url) !== -1){
                index = i;
                break;
            }
        }
    }

    links[index].className = ‘active‘;
})();
</script>
 </body>
</html>
时间: 2024-10-11 00:04:48

js控制公共模板中,不同页面中的导航选中效果-判断当前的url的相关文章

Visual Studio 2013新建ASP.NET项目使用Empty模板,在页面中使用验证控件出错的解决方案

Visual Studio 2013新建ASP.NET项目使用Empty模板,在页面中使用验证控件,运行页面,会出现如下的错误: 错误原因 VisualStudio 2012(或2013) WebForm 4.5 开发中,很多控件默认Enable了 Unobtrusive ValidationMode(所谓Unobtrusive Validation,就是一种隐式的验证方式)的属性(和jquery的引用相关),但并未对其进行赋值, Programmer必须手动对其进行设置.比如,在进行数据验证时

ajax中向页面中指定位置添加信息

$.ajax({  type : "POST",  beforeSend : function() {   showLoader("数据加载中...");// 展示等待效果  },  complete : function() {   //与后台通讯(查询是否存在有效保单)    getComPlugin(successCallback,"com.sinosoft.hna.lpcx.LPSQJYSrarch",'searchSQJY',dates

解决html中刷新页面后checkbox还选中的问题

今天在测试代码时候发现在电脑360浏览器和手机浏览器中的checkbox选中后,按f5刷新页面后checkbox还是选中的. 解决方法是:将 autocomplete="off"  这个配置在from上或者你的checkbox上. <form autocomplete="off"> <input id="butAll" style="vertical-align:middle;" type="che

js控制html5 【video】标签中视频的播放和停止

需求:页面中有2个普通按钮a,b.还有一个video标签,能成功播放出视频..我想要的效果是,点击a按钮,视频开始播放,点击b按钮,视频播放停止!!!<br><br>----------------------------------------------------code---------------------------------------------------------------------------<br><br><!DOCT

bootstrap中 刷新页面,tab页选中不改变。

直接拷贝本人代码即可 注意在同级目录下引用 相应的js 和 css. 能实现tab效果 关键看bootstrap的 data-toggle= tab <html lang="en"> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="bootstrap.min.css"> <script src="

在jsp中同一页面中多个标签页之间切换数据展示

示例图片: 像这样的上面多个tab页下面也有多个tab页面,其实只要学会一个嵌套就可以了,现在就说一下简单的一个页面的多个tab页面的展示

config.js配置页面中的样式和图片路径

这个文章用在什么地方,我先说一下,上周啊,我接到一个任务.因为公司业务要对接不同的银行,例如在工行下颜色是红色的,在其他银行下默认为蓝色,所以在页面一致的情况下,保证页面中的按钮和ICON是可以配置的,这样秩序改动一个值[颜色或路径],就能正常全部适配好了,其实这个业务很简单: **第一种方案:我们有新建两个config1.js和config2.js,代码分别类似如下:** var config = { // 改变全局按钮颜色 btncolor: "red", // 配置优惠券和同意的

同一标签内多个css规则在页面中如何显示?

这两天在学习css涉及到内联.外联.嵌入对页面的影响: 1.内联式-----将css代码直接写在html中.用 <style> 标记将样式定义为内部块对象.示例代码如下如下: <style type="text/css"> <!-- #user_nav{float:right;margin-right:20px;padding:4px; } --> </style> 内联 CSS 可以有效减少 HTTP 请求,提升页面性能,缓解服务器压力

iframe子页面js调用父页面js函数/父页面调用Iframe子页面中js方法

1.假设当前页面为a.html, iframe的src页面为b.html,其代码如下: 1 <span class="tag"><html> 2 <br></span><span class="tag"><head> 3 <br></span><span class="tag"><title></span><s