ColorBox의 checbox를 확인하는 사용자가 설정 한 값을 유지할 JavaScript 객체를 만들었습니다.사용자 액션에서 값을 가져 오기위한 JavaScript 메커니즘
jQuery 및 프로그래밍 JavaScript "올바른 방법"에 비교적 익숙하며 사용자를 캡처하기위한 아래의 메커니즘 확인 작업이 일반적으로 JavaScript의 모범 사례였습니다. 또한 jQuery를 사용하고 있기 때문에 활용해야하는 작업을 수행하는 더 간단한 방법이 있습니까?
function Check() {
this.Checked = false;
}
obj = new Check;
$(document).ready(function() {
$('.cboxelement').colorbox({ html: '<input id="inactivate" type="checkbox" name="inactivatemachine"> <label for="inactivate">Inactivate Machine</label>' });
$(document).bind('cbox_cleanup', function() {
obj.Checked = $.fn.colorbox.getContent().children('#inactivate').is(':checked');
});
$(document).bind('cbox_closed', function() {
if ($($.fn.colorbox.element()).attr('id').match('Remove') && obj.Checked) {
var row = $($.fn.colorbox.element()).parents('tr');
row.fadeOut(1000, function() {
row.remove();
});
}
});
});
jQuery의'data()'메소드에 대해 알지 못했습니다. ColorBox의 특성을 감안할 때 내 용도에 가장 적합합니다. "네임 스페이스"에 값을 첨부 할 때 지침이 있습니까? – ahsteele
@ahsteele : 글쎄, "네임 스페이스"는 실제로 문자열 기반입니다 (그러므로 내 대답의 단어 주위의 따옴표). 기본적으로 키 -> 값 쌍을 객체에 추가합니다. 뭔가 (데모 용) :'document.body.data [ 'colorbox.checked'] = true'.이것은 다른 플러그인이 우연히 key-> value 쌍을 덮어 쓰지 않도록하기 위해서입니다 (이것은 'checked'와 같은 일반적인 변수로 가능합니다). 합법적으로 다음과 같이 할 수 있습니다 :'$ ('body'). data ('colorbox_checked', true)'. 점 표기법 대신. 내가 말했듯이 "네임 스페이스"입니다. 행운을 빕니다! – KyleFarris