静态页面中导航切换时的当前状态(四中方法)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>导航当前状态</title>
    <script src="jquery-1.8.2.min.js"></script>
</head>
<body >
<div ></div>

<script>
    //第一种方法:给当前页面导航添加class
    //优点:适用于每个页面
    //缺点:每个也页面都要声明ID(secondId),页面很多时,代码量大
    function s35() { document.getElementById(‘dhnews‘).className = "xz"; }

    //第二种方法:给当前页面设置ID,通过ID获取对应的索引值。为当前页面导航添加class
    //优点:适用于每个页面
    //缺点:每个也页面都要声明ID(secondId),页面很多时,代码量大
    var secondId = ‘16481‘;
    $("#cbg-main-nav").find("li").eq(topBottom(secondId)).addClass("current");
    function topBottom(secondId){
        switch(secondId){
            case ‘2613‘:
                return 0;
            case ‘2617‘:
                return 1;
            case ‘2622‘:
                return 4;
            case ‘16195‘:
                return 2;
            case ‘5712‘:
                return 4;
            case ‘2637‘:
                return 6;
            case ‘16481‘:
                return 3;
        }
    }

    //第三种方法:判断当前导航链接与页面链接
    //优点:可作为公共部分提出代码
    //缺点:只适用于在菜单栏有入口的页面
    $(document).ready(function(){
        $(".nav a").each(function(){
            $this = $(this);
            if($this[0].href==String(window.location)){
                $this.addClass("hover");
            }
        });
    });

    //第四种方法:判断页面链接与当前导航链接
    //优点:可作为公共部分提出代码
    //缺点:只适用于在菜单栏有入口的页面
    $(function () {
        var $SIDEBAR_MENU=$(‘#sidebar-menu‘);
        var CURRENT_URL = window.location.href.split(‘#‘)[0].split(‘?‘)[0];
        var pathName_URL = window.location.pathname.split(‘#‘)[0].split(‘?‘)[0];   //
        $SIDEBAR_MENU.find("a").filter(function(){return this.href==CURRENT_URL}).addClass("current-page");
        //处理个别不在菜单中的页面
        if(pathName_URL=="/gov/info/findInfoList" || pathName_URL=="/gov/info/findInfoById" || pathName_URL=="/gov/standard/findList"){
            $(‘#menu-article‘).find("a").addClass("current-page");
        }else if(pathName_URL=="/gov/transportCar/toByNo"){
            $(‘#js_to_list‘).find("a").addClass("current-page");
        }
    });

</script>

<!--<div class="nav">
    <ul>
        <li><a href="1.html"> 首页</a></li>
        <li><a href="2.html"> 个人资料</a></li>
        <li><a href="3.html"> 我的好友</a></li>
        <li><a href="4.html"> 消息管理</a></li>
    </ul>
</div>-->

</body>
</html>

原文地址:https://www.cnblogs.com/hjbky/p/8649796.html

时间: 2024-10-10 04:48:08

静态页面中导航切换时的当前状态(四中方法)的相关文章

Android中Activity切换时共享视图元素的切换动画(4.x兼容方案)

同时发布在我的博客 点此进入 开始 上一篇讲了使用 Google 的 AppCompat-v7 来实现 Activity 切换时实现共享视图元素的切换动画.这一篇介绍两个可以兼容 4.x 的两个第三方方案. 上一篇:Android中Activity切换时共享视图元素的切换动画(5.0以上) 方案一:PreLollipopTransition 首先在 build.gradle 配置文件添加这个库依赖 dependencies { compile 'com.kogitune:pre-lollipop

浏览器客户端智能自动化:如何取得页面中JavaScript运行时动态生成的URL?

浏览器客户端智能自动化:如何取得页面中JavaScript运行时动态生成的URL? 需求 "页面智能拼接"指的是通过启发式查询DOM树,判断出"下一页"链接,取出其href属性.Chromium的官方插件DOM Distiller完成类似的工作,主要目的就是为了将多页点击流程变成单页的Ajax连续阅读体验. 问题是,现在有些网站为了阻止浏览器客户端这么做,将href属性设置为"#"(或javascript:void()),然后在其onclick事

Myeclipse中文件已经上传到服务器目录下,文件也没有被占用,但是页面中无法读取和使用问题的解决方法

这个问题是由于Myeclipse中文件不同步引起的.在Myeclipse中,工程文件是由Myeclipse自动扫描添加的,如果在外部修改了工程目录中的文件但又关闭了自动刷新功能,则会引起文件不同步.此外,在外部没有修改Myeclipse工程中的文件也有可能引起该问题. 解决方法: 有两种解决方法: 1)手动刷新.即在Myeclipse的工程目录中,右键refresh(或者按下F5). 2)配置Myeclipse的选项: a)Myeclipse启动时,刷新workspace,即勾选:window-

页面中js按顺序加载完全的方法

页面中js加载完全的方法   function loadScript( url, callback) {     var script = document.createElement("script");     script.type = "text/javascript";     if (script.readyState) {         script.onreadystatechange = function() {             if (

django rest framework 向数据库中插入数据时处理外键的方法

一.models.py中 from django.db import models class UserModel(models.Model) user_name = models.CharField() class MyModel(models.Model) author = models.Foreignkey(user) age = models.CharField() 二. 序列化文件 serializers.py 中创建序列化类 from rest_framework.serialize

在MVC中,网页页面主菜单间切换时,给当前菜单项添加样式

在Head部,添加如下代码, <style>#menu li.active{ color:red;}</style>@{ string requestUrl = Request.Url.ToString(); } <script> $(function() { if ('@requestUrl' == "") return; var arr = ["/Print", "/Report", "/Repr

WebView点击加载的页面中的按钮时不弹出新窗口以及在加载后执行javascript

mWebView.setWebViewClient(new WebViewClient() { //点击网页中按钮时,在原页面打开 public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } //页面加载完成后执行 @Override public void onPageFinished(WebView view, String url) { super

静态页面中如何传json数据

首页传递参数组装成json数据,再编码 var param="{type:'"+type+"',text:'"+select_text+"',select_:'"+select_+"',typename:'"+typename+"'}"; window.self.location="/"+ServerName+"/public/serverlist.html?param=&qu

Android中Activity切换时共享视图元素的切换动画(5.0以上)

同时发布在我的博客 点此进入 背景 说来这个的背景非常简单,经常在使用图片列表的时候就会想,如果"列表中的图片放大到整个屏幕"作为 Activity 的补间动画,就非常完美了.就像这样: Android 5.0 Lollipop 的 SDK 发布以后,这个新的主题包含在 AppCompat-v7 21了. 这里介绍的实现方法是 ActivityOptionsCompat.makeSceneTransitionAnimation , 缺点是只能在5.0上才可以看到效果,在5.0以下只能确