CSS中的JQuery更改不会停留

时间:2013-07-11 22:58:52

标签: jquery css

我使用JQuery隐藏页面的某些部分并显示其他部分(当前子页面,同时隐藏所有其他部分)。但是,当我点击按钮时,更改仅适用于1秒,之后样式将重置为默认值...

这是代码的一部分,例如:

$(document).ready(function(){
$("#NavMenu a").on('click', function() {

   var chosen = $(this).attr("id");

   $(".SubPage").css('display', 'none');
   $(".SubPage, #" + chosen).css('display', 'block');

 });
});

SubPage =页面上所有子文章中使用的类; NavMenu =用于选择页面部分的主菜单的id; 每个子页面都有自己的id,变量“selected”成立。

* 如果我将属性更改为其他人(出于测试目的),例如“font-size”被更改而不是“显示”,他们仍会闪烁一秒钟并切换回来到过去的样子。

1 个答案:

答案 0 :(得分:0)

我已将your JSFiddle更新为可行的内容。

我削减了很多,因为你包含了超过你需要的东西。

你的一个选择者错了:

 $(".SubPage, #" + chosen).css('display', 'block');

需要:

 $(".SubPage#" + chosen).css('display', 'block');

另请注意,您可以使用简单的.show().hide()方法:

 $("#NavMenu a").on('click', function() {
    var chosen = $(this).attr("id");
   $(".SubPage").hide();
   $(".SubPage#" + chosen).show();
  });