IE8 only-Object не поддерживает свойство или метод "widget"

Я получаю ошибку, связанную с [jCoverflip][1], которая возникает только в IE8. Возникает следующая ошибка:

SCRIPT438: объект не поддерживает свойство или метод 'виджет' на jQuery.jcoverflip.js, строка 508 символ 1

, который относится к следующим кодом:

$.widget( 'ui.jcoverflip', {

У меня есть jQuery и jQueryUI оба включены, перед скриптом, плюс скрипт отлично работает во всех других браузерах.

что вызывает проблема?

2 ответов


вы, кажется, загружаете jquery дважды:

<!-- First here -->
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="/./scripts/jquery-ui-1.7.2.custom.js"></script>
<!-- Then again here -->
<script type="text/javascript" src="/scripts/jquery.js"></script>

они кажутся v1.3.2 и v1.0.4 (!), соответственно. Это полностью устарели. Я не знаю, каковы требования jQuery UI 1.7.2, но я уверен, что v1.0.4 не сделает этого. v1.3.2 может, jQuery UI 1.7.2 пару лет. (Вы можете хотя бы посмотреть на jQuery UI 1.7.3, , который сказал это для jQuery v1.3.2.)

кроме того, вы используете MooTools на странице, но я не сразу понимаю, куда ты звонишь!--2--> (Я не копал так глубоко). Это вполне может быть проблемой, MooTools и jQuery оба пытаются использовать $. Чтобы избежать конфликта, сразу после загрузки jQuery сделайте следующее:

<script>
jQuery.noConflict();
</script>

У меня была аналогичная проблема. Есть jquery.пользовательский интерфейс.штучка.js, который не был включен. Моя проблема была решена после этого.