문서의 요소에 상황에 맞는 메뉴를 첨부해야하는 자바 스크립트를 작성하고 있습니다. 컨텍스트 메뉴에 대한 jquery 플러그인에는 컨텍스트 메뉴의 id와 옵션 객체가 필요합니다. 옵션 객체는 키가 값의 쌍인 키와 값 쌍을 가져야하는 바인딩이라는 속성을 가지고 있으며 값은 클릭시 호출되는 함수입니다.JavaScript에서 대괄호 표기법을 사용하여 객체에 함수를 연결하는 방법은 무엇입니까?
문제는 내가 채우려 고 시도하고있는 바인딩 객체가 괄호 개념을 사용할 때 값으로 함수를 첨부하지 않아 메뉴 항목의 ID를 미리 확인할 수 없기 때문에 필요하다는 것입니다.
var bindings = {};
var bindingsFunction = function(t){
alert('Trigger was ' + t.id + '\nAction was Open');
};
var $listItems = $contextMenu.find('li');
$listItems.each(function(index, item){
var key = '' + item.id;
bindings[key] = bindingsFunction;
});
console.log('bindings is empty', bindings);
var result = $icon.contextMenu(contextMenuId, {
bindings: bindings
});
예, 스크립트에서 제거 된 console.log에서 ID와 바인딩 [id] = id가 작동했음을 보여줍니다. – Azder
빈 문자열은 완벽하게 유효한 속성 이름이며 점 표기법으로는 액세스 할 수 없습니다. –