Javascript 如何创建一个函数并使用jQuery调用它?

Javascript 如何创建一个函数并使用jQuery调用它?,javascript,jquery,Javascript,Jquery,我以前在我的点击功能中有很多东西。 现在,我试图重构我的代码,通过创建一个函数并调用它,这样我就可以在多个地方重复使用它,而无需重复我自己 我现在陷入困境,不知道我做错了什么。 我的.js文件中有0个错误和0个警告。我使用JS lint 这是我目前的情况 function cbInit() { ($pbSection, $chSection, $chBtns, $chBtnsRow, $btnTime, $btnRemediation).hide(); ($cbSection,

我以前在我的点击功能中有很多东西。 现在,我试图重构我的代码,通过创建一个函数并调用它,这样我就可以在多个地方重复使用它,而无需重复我自己

我现在陷入困境,不知道我做错了什么。 我的.js文件中有0个错误和0个警告。我使用JS lint

这是我目前的情况

function cbInit() {

    ($pbSection, $chSection, $chBtns, $chBtnsRow, $btnTime, $btnRemediation).hide();
    ($cbSection, $cbBtns).show();
    $btnBiDefault.removeClass('btn-bi-default-clicked');
    $btnAssignmentPerformance.addClass('btn-bi-default-clicked');
    $cbImage.attr('src', '/BIM/resources/images/monitorprogress/reports/02-Course Benchmark/Assignment.png');
}

$courseBenchmark.click(function(e) {
    e.preventDefault();

    cbInit();
}
没有隐藏任何内容,没有加载图像。 它似乎是
cbInit()根本不执行

  • 如何追查这类问题
  • 有人能帮我一下吗

将变量列表放在括号中并不会自动将方法调用映射到所有变量,它只调用逗号运算符,该运算符的计算结果为列表中的最后一个。可以使用jQuery方法合并集合

function cbInit() {

    $pbSection.add($chSection).add($chBtns).add($chBtnsRow).add($btnTime).add( $btnRemediation).hide();
    $cbSection.add($cbBtns).show();
    $btnBiDefault.removeClass('btn-bi-default-clicked');
    $btnAssignmentPerformance.addClass('btn-bi-default-clicked');
    $cbImage.attr('src', '/BIM/resources/images/monitorprogress/reports/02-Course Benchmark/Assignment.png');
}

这不是javascript(因此jquery)的工作方式:

($pbSection、$chSection、$chBtns、$chBtnsRow、$btnTime、$BTNREDITION).hide()

如果您需要单衬里,您可以这样做:

[$pbSection, $chSection, $chBtns, $chBtnsRow, $btnTime, $btnRemediation].forEach(function($item){$item.hide()});

所有变量(
$courseBenchmark
$pbSection
等)都在哪里定义?是否有
$(document).ready(函数{…})代码中的任何位置?表达式
($pbSection、$chSection、$chBtns、$chBtnsRow、$btnTime、$BTNRedition)
仅相当于
$BTNRedition
。了解@Barmar:哦,真的!谢谢你的提示。你知道怎么调整吗?让我们看看我的功能现在是否运行。谢谢你把选项扔出去。