Javascript 将此jquery转换为if/else语句

Javascript 将此jquery转换为if/else语句,javascript,jquery,html,code-snippets,Javascript,Jquery,Html,Code Snippets,我在下面有这个片段,我;我试图使它成为一个if/else语句,但我得到了语法错误 <!--script for changing Number of Columns--> $(window).load(function(){ var idx = $('select[name="numNames"]').children('option:selected').index(); if (idx < 7){ $('.oneColumn').click(function() { $('

我在下面有这个片段,我;我试图使它成为一个if/else语句,但我得到了语法错误

<!--script for changing Number of Columns-->
$(window).load(function(){
var idx = $('select[name="numNames"]').children('option:selected').index();
if (idx < 7){
$('.oneColumn').click(function() {
$('.IH_pINameRow').removeClass("floatLeft ");
$('.IH_pINameRow').addClass("floatNone ");
$('.odd').removeClass("leftMargin");
$('.even').removeClass("rightMargin ");
$('.pI_nameText').removeClass("textAlignLeft textAlignRight");  
$('.pI_nameText').css('font-size', '2em');
$('.pI_nameText').addClass("1col");
$('.pI_nameText').removeClass("2col");
$('label.twoColumn').css('background-position', '-104px -52px');
$('label.oneColumn').css('background-position', '-104px -26px');
} else {
    return false;
}
}); //error is here//
if (idx > 3){
$('.twoColumn').click(function() {
$('.IH_pINameRow').removeClass("floatNone ");
$('.IH_pINameRow').addClass("floatLeft ");
$('.odd').addClass("leftMargin");
$('.even').addClass("rightMargin ");
$('.pI_nameText').css('font-size', '1em');
$('.pI_nameText').removeClass("1col");
$('.pI_nameText').addClass("2col");
$('.odd').removeClass("textAlignLeft");
$('.even').removeClass("textAlignRight");
$('.even, .odd').addClass("textAlignCenter");
$('label.twoColumn').css('background-position', '-104px -26px');
$('label.oneColumn').css('background-position', '-104px -52px');
$('label.leftAlignment').css('background-position', '-104px -52px');
$('label.centerAlignment').css('background-position', '-104px -26px');
} else {
    return false;
}
});
}); 

$(窗口)。加载(函数(){
var idx=$('select[name=“numNames”]').children('option:selected').index();
if(idx<7){
$('.oneColumn')。单击(函数(){
$('.IH_pINameRow').removeClass(“floatLeft”);
$('.IH_pINameRow').addClass(“floatNone”);
$('.odd').removeClass(“leftMargin”);
$('.even').removeClass(“rightMargin”);
$('.pI_nameText').removeClass(“textAlignLeft textAlignRight”);
$('.pI_nameText').css('font-size','2em');
$('.pI_nameText').addClass(“1col”);
$('.pI_nameText').removeClass(“2col”);
$('label.twoColumn').css('background-position','-104px-52px');
$('label.oneColumn').css('background-position','-104px-26px');
}否则{
返回false;
}
});//错误在这里//
如果(idx>3){
$('.twoColumn')。单击(函数(){
$('.IH_pINameRow').removeClass(“floatNone”);
$('.IH_pINameRow').addClass(“floatLeft”);
$('.odd').addClass(“leftMargin”);
$('.even').addClass(“rightMargin”);
$('.pI_nameText').css('font-size','1em');
$('.pI_nameText').removeClass(“1col”);
$('.pI_nameText').addClass(“2col”);
$('.odd').removeClass(“textAlignLeft”);
$('.even').removeClass(“textAlignRight”);
$('.偶数,.奇数').addClass(“textAlignCenter”);
$('label.twoColumn').css('background-position','-104px-26px');
$('label.oneColumn').css('background-position','-104px-52px');
$('label.leftAlignment').css('background-position','-104px-52px');
$('label.centerAlignment').css('background-position','-104px-26px');
}否则{
返回false;
}
});
}); 

我也不确定代码范围是否正确,因此idx变量可用于第二个函数…

让我们将其分解为裸露的部分,并修复缩进。然后使用一些静态分析来压缩if语句

<!--script for changing Number of Columns-->
$(window).load(function(){

  function oneColumnClick() {
    $('.IH_pINameRow').removeClass("floatLeft ");
    $('.IH_pINameRow').addClass("floatNone ");
    $('.odd').removeClass("leftMargin");
    $('.even').removeClass("rightMargin ");
    $('.pI_nameText').removeClass("textAlignLeft textAlignRight");  
    $('.pI_nameText').css('font-size', '2em');
    $('.pI_nameText').addClass("1col");
    $('.pI_nameText').removeClass("2col");
    $('label.twoColumn').css('background-position', '-104px -52px');
    $('label.oneColumn').css('background-position', '-104px -26px');
  }

  function twoColumnClick() {
    $('.IH_pINameRow').removeClass("floatNone ");
    $('.IH_pINameRow').addClass("floatLeft ");
    $('.odd').addClass("leftMargin");
    $('.even').addClass("rightMargin ");
    $('.pI_nameText').css('font-size', '1em');
    $('.pI_nameText').removeClass("1col");
    $('.pI_nameText').addClass("2col");
    $('.odd').removeClass("textAlignLeft");
    $('.even').removeClass("textAlignRight");
    $('.even, .odd').addClass("textAlignCenter");
    $('label.twoColumn').css('background-position', '-104px -26px');
    $('label.oneColumn').css('background-position', '-104px -52px');
    $('label.leftAlignment').css('background-position', '-104px -52px');
    $('label.centerAlignment').css('background-position', '-104px -26px');
  }

  var idx = $('select[name="numNames"]').children('option:selected').index();
  if (idx < 7){
    $('.oneColumn').click(oneColumnClick);
    if (idx > 3){
      $('.twoColumn').click(twoColumnClick);
    }
  }
}); 

$(窗口)。加载(函数(){
函数oneColumnClick(){
$('.IH_pINameRow').removeClass(“floatLeft”);
$('.IH_pINameRow').addClass(“floatNone”);
$('.odd').removeClass(“leftMargin”);
$('.even').removeClass(“rightMargin”);
$('.pI_nameText').removeClass(“textAlignLeft textAlignRight”);
$('.pI_nameText').css('font-size','2em');
$('.pI_nameText').addClass(“1col”);
$('.pI_nameText').removeClass(“2col”);
$('label.twoColumn').css('background-position','-104px-52px');
$('label.oneColumn').css('background-position','-104px-26px');
}
函数twoColumnClick(){
$('.IH_pINameRow').removeClass(“floatNone”);
$('.IH_pINameRow').addClass(“floatLeft”);
$('.odd').addClass(“leftMargin”);
$('.even').addClass(“rightMargin”);
$('.pI_nameText').css('font-size','1em');
$('.pI_nameText').removeClass(“1col”);
$('.pI_nameText').addClass(“2col”);
$('.odd').removeClass(“textAlignLeft”);
$('.even').removeClass(“textAlignRight”);
$('.偶数,.奇数').addClass(“textAlignCenter”);
$('label.twoColumn').css('background-position','-104px-26px');
$('label.oneColumn').css('background-position','-104px-52px');
$('label.leftAlignment').css('background-position','-104px-52px');
$('label.centerAlignment').css('background-position','-104px-26px');
}
var idx=$('select[name=“numNames”]').children('option:selected').index();
if(idx<7){
$('.oneColumn')。单击(oneColumnClick);
如果(idx>3){
$('.twoColumn')。单击(twoColumnClick);
}
}
}); 

首先:请缩进您的代码,否则很难找到任何错误

错误在哪里? 您必须关闭
$('.twoColumn')。单击
if(idx>3){
之前的(function(){
,但如果在单击函数之前打开

你为什么会犯这样的错误?
当你正确缩进代码时,你不会犯这种错误。我很好,为你做了这件事:<看起来很奇怪,对吗?

那么你建议我们如何在这里投入?也许你可以给我们更多的工作?当然,基本上,我在第一行遇到错误,我可能缺少一个括号等。我正在寻找一些我猜是关于格式的帮助。如果选择菜单小于某个索引,我想在函数中执行所有操作,如果大于某个索引,则不执行任何操作。我使用的是带标签的按钮和函数。单击函数,否则我将使用检查来查看它是否被选中,不幸的是,这与我的设置方式不符。为什么所有的否决票?对于缩进等事情,新手应该被原谅。不知道常见做法Monstrosities是正确的!这就是当你让一个艺术家编写代码时会发生的情况:0我已经编辑了答案,使其更有用。谢谢Joe,这太棒了。无论出于什么原因,当我将此应用于我的页面时,它都不起作用。如果我更改大于0r小于运算符到大于或等于运算符它再次开始工作…代码没有太大帮助我确定,这是您添加内容之前的页面,以便您可以看到我的来源:似乎大部分都在工作。这不起作用的确切情况是什么?这里有一些更改:当您选择例如8个名称时,它会显示ap选择适当的文本区域并使其成为必需的,它还将布局设置为2列。现在,如果我单击单列“按钮”它什么都不做,当少于7个名字时,它应该只允许它进入1列。基本上,我只允许2列超过3个名字,只允许1列少于7个名字。这有意义吗?它开始对我没有意义了:)感谢Gap,我天生就是一名程序员,相当于一名有技术背景的艺术家。我非常感激这种崩溃……感谢你把它放到一把小提琴里,更容易看到:)