Конечно, это возможно.Вам, вероятно, придется разработать собственное обнаружение для него, используя события mousedown
и mouseup
.Вычислите время между mousedown
и mouseup
и определите, была ли задержка достаточной, чтобы вызвать какое-либо другое действие.
https://jsfiddle.net/psc4yk76/2/
(function() {
const longtime = 500;
const target = document.getElementById('target');
const input = document.getElementById('input');
const button = document.getElementById('button');
var timedown = 0;
button.onmousedown = () => {
timedown = new Date().getTime();
};
button.onmouseup = () => {
let timeup = new Date().getTime();
let insert = document.createElement('div');
if( (timeup - timedown) < longtime ) {
insert.appendChild(document.createTextNode('Short!'));
} else {
insert.appendChild(document.createTextNode('Long!'));
input.click();
}
target.appendChild(insert);
}
})()