2016-12-02 2 views
0

Я получаю жалобы от пользователей IE8 (я знаю), что они не могут открыть вкладку аккордеона.IE8 Объект не поддерживает свойство или метод 'addEventListener'

Они представлены со следующей ошибкой:

SCRIPT438: Объект не поддерживает свойство или метод 'addEventListener'

 document.addEventListener("DOMContentLoaded", completed, false); 
     window.addEventListener("load", completed, false); 
     } 
     } 
     return readyList.promise(obj); 
    }; 
jQuery.ready.promise(); 

Я в настоящее время использую JQuery 2.1.3

Этот ошибка также появляется по следующему сценарию:

<script type='text/javascript'> 
$(document).ready(function() { 
document.getElementById('txt1').addEventListener('change', function() { 
var style = this.value == 'GP Practice' ? 'block' : 'none'; 
document.getElementById('txtpcode').style.display = style; 
}); 
}); 
</script> 

Is там прочь, чтобы это работало под IE8, поскольку я знаю, что addEventListener не поддерживается.

+1

Корпорация Майкрософт больше не производит исправления безопасности для IE8. Поощряйте людей перейти на современный браузер вместо вздутия вашего сайта для поддержки IE8. – Quentin

+1

IE8 занимает 0.78% от всех браузеров. Worldwild (IE9 - 0.51%) (IE10 0.47%) ** ничего меньше 1% не стоит тратить время на ** – Endless

+0

Я полностью согласен с вами обоими. – itguyme

ответ

1

Под IE8 вам необходимо использовать attachEvent. С чистым javascript вам нужно обнаружить браузер пользователя поддержка и использование attachEvent или addEventListener.

Но я предлагаю вам использовать функцию JQueryon(). Он содержит логику и будет работать в каждом браузере.

0

Синтаксис

прилагается = target.attachEvent (eventNameWithOn, обратный вызов)

Задача

DOM-элемент прослушивать событие на

eventNameWithOn

Имя события для прослушивания с префиксом «включено», как если бы это был атрибут обработчика события. Например, вы должны использовать «onclick» для прослушивания события click.

обратного

функции обратного вызова для вызова, когда событие срабатывает на этой цели. Функция будет вызываться без аргументов, и эта ссылка будет установлена ​​на объект окна. прилагается Boolean указывает, был ли обработчик события успешно присоединен.

+0

* attachEvent * не установлен * этот * в слушателе, который код OP. Существует много примеров того, как эмулировать * addEventListener * с * attachEvent *. – RobG

Смежные вопросы