alt click events

by phloe

HTML

<a href="https://www.dr.dk" click_url="https://www.google.com">www.dr.dk</a>

JavaScript

function handleMouseEvent(event) {
    var {
        which,
        button,
        target,
		type
    } = event;
    var isLeftClick = true;
    if (
		(which && which == 3 || which == 2) &&
		(button && button == 2 || button == 4)
	) {
        isLeftClick = false;
    }
    if (target.nodeName.toLowerCase() === 'a' && !isLeftClick) {
        var href = target.href;
        target.setAttribute('href', target.getAttribute('click_url'));
        var reset = () => {
            setTimeout(() => target.setAttribute('href', href), 10);
            target.removeEventListener('mouseup', reset);
            target.removeEventListener('mouseout', reset);
        }
        target.addEventListener('mouseout', reset);
        target.addEventListener('mouseup', reset);
    }
    return true;
}

document.onmousedown = handleMouseEvent;