IE 11 по-прежнему ломается, когда другие браузеры работают нормально. Сегодня я делал несколько jQuery-фейдов и обмен контента, и IE 11 был единственным, кто решил не работать.
бнаружения IE большинство библиотек Javascript выполняют всевозможные трюки.
JQuery, кажется, добавляет временный объект в DOM ваших страниц, чтобы обнаружить некоторые функции,YUI2 выполняет регулярное выражение для агента пользователя в своемYAHOO.env.ua = function()
(файлyahoo.js
)После прочтенияэтот ответ мне пришло в голову, что это правда, чтобы просто определить IE в Javascript, мы могли бы просто добавить его на наши страницы:
<!--[if IE]><script type="text/javascript">window['isIE'] = true;</script><![endif]-->
<script type="text/javascript" src="all-your-other-scripts-here.js"></script>
Теперьwindow.isIE
Переменная устанавливается для всего нашего кода Javascript, просто выполнив:
if(window.isIE)
...
Помимо того, что это может привести к боли, потому что это должно быть добавлено на всех страницах,Есть ли какие-либо проблемы / соображения, которые я мог бы не знать?
К вашему сведению: я знаю, что лучше использоватьобнаружение объекта, а не обнаружение в браузере, но есть случаи, когда вам все равно придется использовать обнаружение браузера.