Поддерживает Internet Explorer e.preventDefault

Internet Explorer не поддерживает e.preventDefault в javascript. Если нет, то в чем причина и какие альтернативы. Пожалуйста, не предлагайте никаких ответов jQuery, mootools.

if (!e) e = window.event;

if (e.preventDefault) { 
    e.preventDefault(); 
} else {
    e.returnValue = false;
}

код >

Ответ 1

Хорошо, если вы настаиваете:

event.preventDefault не работает, потому что он не существует в IE.

По какой причине он не существует, нужно работать в MS. Но в целом IE не всегда соответствует стандартам.

В документации вы можете установить event.returnValue:

false
Действие по умолчанию для события на исходном объекте отменяется.

и далее:

Примечание

Значение этого свойства имеет приоритет над значениями, возвращаемыми функцией, например, с помощью оператора возврата JScript Microsoft.

Информация о стандартах

Нет общедоступного стандарта, который применяется к этому свойству.

preventDefault, похоже, поддерживается в IE9.

Ответ 2

Он не поддерживает его, потому что кто-то из Microsoft решил это сделать.

Альтернативой является event.cancelBubble.