Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过页面刷新,使用JQuery保留添加的类_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 通过页面刷新,使用JQuery保留添加的类

Javascript 通过页面刷新,使用JQuery保留添加的类,javascript,jquery,html,css,Javascript,Jquery,Html,Css,关于我的选项卡,我有以下JQuery代码: $("#onglet>ul>li").click(function(){ $("#onglet ul li").removeClass('Selectionne').addClass("OngletPrincipal"); $(this).removeClass().addClass('Selectionne'); $(this).unbind('mouseenter mouseleave'); 它可以工作,

关于我的选项卡,我有以下JQuery代码:

$("#onglet>ul>li").click(function(){

      $("#onglet ul li").removeClass('Selectionne').addClass("OngletPrincipal");    
  $(this).removeClass().addClass('Selectionne');
  $(this).unbind('mouseenter mouseleave');
它可以工作,但只要我点击一个选项卡,它就会引导我进入另一个页面,这个选项卡就会得到它原来的类。。。。所以它的外观最终没有改变

<div id="onglet">
    <ul >
      <li class="OngletPrincipal">
      <a href="masterPage.html">Accueil</a>
      </li>
      <li class="OngletPrincipal">
        <a href="masterPage.html">Catalogue </a>
      </li>
      <li class="OngletPrincipal">
      <a href="Societe.html"> Nous  </a>
      </li>
      <li class="OngletPrincipal">
        <a href="contact.html"> Contacts     </a>
      </li>
      <li class="OngletPrincipal">
       <a href="tableauBord.html">   Espace client</a>
      </li>
    </ul>
  </div> 

我应该如何在“Selectionne”类中保留选项卡? ....
谢谢你

如果在href中完全重新加载/加载该页面,则该页面是另一个页面,因此所有内容都将重新加载,并且您的by js添加的类将返回到初始类

您必须在服务器端记住它,或者将它传递到在js中解析的url参数中,并查看请求的内容,从而激活右侧的类


或者动态加载内容并保持在同一页面上。

如果在href中完全重新加载/加载页面,则该页面是另一个页面,因此所有内容都将重新加载,并且您的by js添加的类将返回到初始类

您必须在服务器端记住它,或者将它传递到在js中解析的url参数中,并查看请求的内容,从而激活右侧的类


或者动态加载内容并停留在同一页面上。

如果您正在加载一个新的静态页面,而所选选项卡只是指向该页面的链接,为什么所选选项卡没有硬编码到每个页面中?如果您的服务是动态的,为什么服务器在生成页面时不设置所选的类?看起来这些选项卡在一组静态html页面之间导航,所以我不确定为什么需要在使用JavaScript加载页面后设置此类

但是,如果在页面加载后设置此选项有什么原因我不知道,那么您可以考虑使用或其他历史类型插件将选项卡选择持久化到url中,以便在页面加载后对其进行解析,例如
http://fake.com/foo.html#/tab1
。或者,如果没有插件,您只需检查加载时选择的页面,并将选项卡设置为:

$(document).ready(function(){
    var loc = window.location.toString();
    var page = loc.substring(
        loc.lastIndexOf('/',0) + 1, 
        loc.length);
    $('#onglet>ul>li>a[href$="' + page + '"]').parent().addClass('Selectionne');
});

如果您正在加载一个新的静态页面,而所选选项卡只是指向该页面的链接,为什么所选选项卡没有硬编码到每个页面中?如果您的服务是动态的,为什么服务器在生成页面时不设置所选的类?看起来这些选项卡在一组静态html页面之间导航,所以我不确定为什么需要在使用JavaScript加载页面后设置此类

但是,如果在页面加载后设置此选项有什么原因我不知道,那么您可以考虑使用或其他历史类型插件将选项卡选择持久化到url中,以便在页面加载后对其进行解析,例如
http://fake.com/foo.html#/tab1
。或者,如果没有插件,您只需检查加载时选择的页面,并将选项卡设置为:

$(document).ready(function(){
    var loc = window.location.toString();
    var page = loc.substring(
        loc.lastIndexOf('/',0) + 1, 
        loc.length);
    $('#onglet>ul>li>a[href$="' + page + '"]').parent().addClass('Selectionne');
});