Я знаю, что это довольно старый пост, но я просто потратил некоторое время, пытаясь сделать эту работу в IE8.
Похоже, что есть некоторые отличия в версиях IE8, потому что решения, размещенные здесь и в других потоках, не работали для меня.
Предположим, что у нас есть этот код:
returnValue
В моем preventDefault()
методе IE8 существует из-за jQuery, но не работает (возможно, из-за точки ниже), поэтому это не сработает.
Даже если я задал $('a').on('click', function(event) { event.returnValue = false; event.preventDefault(); });
свойство непосредственно false:
returnValue
Это также не сработает, потому что я просто установил некоторое свойство специального объекта события jQuery.
Только решение , которое работает для меня , чтобы установить свойство event
в глобальной переменной event
, как это:
$('a').on('click', function(event) {
if (window.event) {
window.event.returnValue = false;
}
event.preventDefault();
});
Просто, чтобы облегчить для кого-то, кто попытается убедить IE8 работать. Надеюсь, что IE8 скоро умрет от мучительной смерти.
ОБНОВИТЬ:
Как указывает sv_in , вы можете использовать event.originalEvent
для получения исходного объекта события и установки returnValue
свойства в исходном. Но я еще не тестировал его в своем IE8.