2013-12-06 3 views
0

Когда я запускаю свой сайт в Internet Explorer 11, он падает. Используя консоль разработчика, я могу проследить проблему в файле jQuery-1.3.2. Строкой является код, вызывающий проблему:jQuery 1.3.2 не работает в Internet Explorer 11

J.open(G,M.url,M.async) 

Пришел ли кто-нибудь к этой ошибке раньше? Эта ошибка отсутствует в любом другом браузере или версии IE

+6

Я не совсем удивлен тем, что версия jQuery, имеющая 7 основных выпусков, может иметь некоторые проблемы с браузерами, выпущенными 4 года спустя. Когда была выпущена версия 1.3.2, последняя версия IE была 7. – JJJ

+0

Я хорошо знаю об этом, и есть веская причина, по которой я решил использовать эту версию. –

+3

Хммм. Какова бы ни была ваша хорошая причина, я думаю, вам придется пересмотреть это. В чем причина? Возможно, мы сможем помочь вам обдумать это и найти другое решение. – Spudley

ответ

2

Эта часть jQuery связана с функциональностью XHR. В более старых версиях Internet Explorer и jQuery ActiveX использовалось для выполнения этих асинхронных запросов. В современных версиях jQuery браузер исследуется немного дальше, чтобы определить, следует ли использовать ActiveX. Кроме того, современные версии Internet Explorer не будут хорошо сочетаться с альтернативами ActiveX XHR. Скорее, тот же код, используемый для Chrome и Firefox, должен использоваться для Internet Explorer - чего-то более старого jQuery-сборки не делали.

У вас есть несколько вариантов здесь; вы можете аннулировать понимание jQuery (1.3.2, то есть) о том, что такое браузер, а затем переломить большую часть библиотеки, не связанную с асинхронными запросами, или вы можете использовать более современную версию jQuery, которая дает гораздо лучшие решения в отношении на что способен браузер. Я бы предположил, что позже, поскольку первый потенциально может уничтожить любую надежду на jQuery, облегчающий вашу жизнь в конце.

+0

Спасибо за это, при условии некоторой ясности :) –

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