Выполнить событие после нажатия на ссылку до перехода
После нажатия на ссылку, сначала должен выполниться определённый скрипт, а только за тем переход.
Как такое сделать? |
function Do(event) {
//Отменяем действие по умолчанию(переход по ссылке)
event = event || window.event
if (event.preventDefault) { // если метод существует
event.preventDefault();
} else { // вариант IE<9:
event.returnValue = false;
}
//Тут выполняем все нужные вам действия
//Делаем редирект
document.location.href = 'http://google.ru';
}
|
На самом деле preventDefault не нужен, если после скрипта должен идти нормальный переход(и в скрипте нет ничего асинхронного).
Те просто:
link.addEventListener('mousedown',function(){
//ваш код
},false)
Если заморачиваться, то надо бы ещё добавить listener на keydown и event.keyCode == код энтера, а также вариант с attachEvent для старых ie. Но и так сойдёт.) |
| Часовой пояс GMT +3, время: 22:50. |