我使用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”被更改而不是“显示”,他们仍会闪烁一秒钟并切换回来到过去的样子。
答案 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();
});