0
I 타입 체크 박스의 입력을 클릭하면 실행하도록되어 기능을 가지고 작동하지 클릭자바 스크립트 Ctrl 키를 ... 파이어 폭스
$.fn.ctrlSelectable = function() {
var lastChecked,
$boxes = this;
$boxes.click(function(evt) {
console.log("clicked")
if(!lastChecked) {
lastChecked = this;
return;
}
if(evt.ctrlKey) {
var start = $boxes.index(this),
end = $boxes.index(lastChecked);
$boxes.slice(Math.min(start, end), Math.max(start, end) + 1)
.prop('checked', lastChecked.checked)
.trigger('change');
}
lastChecked = this;
});
};
$("form").find('input[type="checkbox"]').ctrlSelectable();
기능은 IE, 구글에서 작동하고, 아마 다른 사람, Firefox에서는 작동하지 않습니다. Ctrl 키를 누르지 않고 단순히 체크 박스를 클릭하면 console.log("clicked")
이 작동하지만 컨트롤을 잡고있을 때는 아무 것도하지 않습니다. 왜 이런 일이 일어날 지 또는 어떻게 해결할 수 있는지에 대한 조언을 누군가가 나에게 줄 수 있습니까?
감사합니다.
어떤 OS에 있습니까? 다른 사람에 대해 모르겠지만 macOS에서 Ctrl + 클릭은 '마우스 클릭'+ 'contextmenu' 이벤트가 발생하지만 클릭은 발생하지 않는 마우스 오른쪽 버튼 클릭입니다. – Kaiido
Windows. 팁을 가져 주셔서 감사합니다. 맥을 사용해야하는 경우를 염두에 두겠습니다. –
여전히 mousedown 이벤트에 핸들러를 연결하여 무언가가 있는지 확인하십시오. – Kaiido