나는 다음과 같은 코드를 가지고 : 나는 그 $ (이) .toggleBranchOpen() 내가 볼 수있는 디버깅 할 때
function init() {
var $contentButtonPanel: JQuery = $('#content-button-panel')
$contentButtonPanel
.find('.arbo .toggle, .collapsible-list li:has(ul) > :first-child, .collapsible-list li:has(ul) > :first-child + span')
.click(function (event) {
$(this).toggleBranchOpen();
});
}
$.fn.toggleBranchOpen = function() {
this.each(function() {
$(this).closest('li').toggleClass('closed');
});
return this;
};
을; 라인에 도달했습니다. 그러나 코드는 그 함수 안에 들어 가지 않습니다.
toggleBranchOpen이 선언 된 방식에 문제가 있습니까? toggleBranchOpen이 사용되는 유일한 시간은 init 함수의 click 이벤트 내부입니다. 이 코드를 init으로 옮겨서 단순화 할 수 있습니까?
예, 핸들러로 이동하면 훨씬 간단 해집니다. 특히 하나의 이벤트에만 필요하다면 모든 jQuery 인스턴스에 대해 전역 함수로 만들 필요가 없습니다. – Bergi
"그 기능에 들어 가지 않는다"는 것은 무엇을 의미합니까? 실행되지 않았습니까? 오류가 있습니까? – Bergi
'$ ('content-button-panel')'에 의해'var $ contentButtonPanel : JQuery = $ ('# content-button-panel') $ contentButtonPanel'로 바꿉니다. 너무 많이 보입니다. Syntax Error – Bergi