簡體   English   中英

如何創建函數並使用jQuery調用它?

[英]How can I create a function and call it back using jQuery?

我過去在click函數中有很多東西。 現在,我試圖通過創建一個函數並對其進行回調來重構代碼,這樣我就可以在多個地方重用它而無需重復自己。

我現在呆滯了,不確定在這里我做錯了什么。 我的.js文件出現0錯誤和0警告。 我使用JS皮棉。

這是我目前所擁有的。

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方法.add()合並集合。

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, $btnRemediation).hide();

如果需要一個襯板,可以執行以下操作:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM