jQuery if语句徽标有问题。没有回应我的期望
我的网站的基本前提是六个大框,当你点击它们中的任何一个时,它们会缩小成一个图形菜单栏。为“主页”按钮添加了一个额外的图标 为了在第一个网格布局中正确定位框,我添加了一些额外的类,例如jQuery if语句徽标有问题。没有回应我的期望,jquery,css,if-statement,Jquery,Css,If Statement,我的网站的基本前提是六个大框,当你点击它们中的任何一个时,它们会缩小成一个图形菜单栏。为“主页”按钮添加了一个额外的图标 为了在第一个网格布局中正确定位框,我添加了一些额外的类,例如边距零、左下和右下。当图像缩小时,我需要删除这些类,当它们扩展到全尺寸时,我需要将它们带回来 因此,我创建了一个小的if语句 var counter = 0; if(counter = 0) { jQuery(".two").toggleClass( "two-menu" ); jQuery(".f
边距零
、左下
和右下
。当图像缩小时,我需要删除这些类,当它们扩展到全尺寸时,我需要将它们带回来
因此,我创建了一个小的if
语句
var counter = 0;
if(counter = 0) {
jQuery(".two").toggleClass( "two-menu" );
jQuery(".four").toggleClass( "four-menu" );
jQuery(".images").toggleClass( "images-menu" );
jQuery(".home").toggleClass( "home-menu" );
jQuery(".four").removeClass( "bottom-left" );
jQuery(".four").removeClass( "bottom-right" );
jQuery(".two").removeClass( "margin-zero" );
var counter = 1;
} else {
jQuery(".two").toggleClass( "two-menu" );
jQuery(".four").toggleClass( "four-menu" );
jQuery(".images").toggleClass( "images-menu" );
jQuery(".home").toggleClass( "home-menu" );
jQuery(".four").addClass( "bottom-left" );
jQuery(".four").addClass( "bottom-right" );
jQuery(".two").addClass( "margin-zero" );
var counter = 0;
}
在我看来这应该行得通。然而,在我的JSFIDLE原型中,它不是。这里是链接,因此您可以看到所有代码以及某些框如何脱离页面
您可以尝试:
if(counter == 0) {
编辑:您还声明了3次计数器。也许您是这个意思
var toggle =0;
function toggleIt() {
toggle=!toggle;
$(".two").toggleClass("two-menu",toggle);
$(".four").toggleClass( "four-menu",toggle);
$(".images").toggleClass( "images-menu",toggle);
$(".home").toggleClass( "home-menu",toggle);
$(".four").toggleClass( "bottom-left",!toggle );
$(".four").toggleClass( "bottom-right",!toggle );
$(".two").toggleClass( "margin-zero",!toggle );
}
首先,您在
if(counter=0)中赋值而不是比较{
,它应该是一个=
。虽然这似乎不能很好地解决它。@Loyalar和它创建了一个同名的新变量,因此原始变量从未更改。如何在不重置变量的情况下更改变量?只需分配它:counter=1;
您不需要重新声明它。