Jquery не работает в ie6 - PullRequest
       12

Jquery не работает в ie6

0 голосов
/ 27 октября 2009

Я застрял на этом

Отлично работает в Firefox, Chrome, Safari, т.е. 8 (почти).

Но в ie6:

  • нет взаимодействия с мышью; добавлены как - $("#watch_but_link").mouseup и $("#watch_but_link").mouseover

  • некоторые функции CSS не работают; добавлено, как - $("#listen_tab").css("background-position","0px 0px");

Существует целая куча разборов и отображения XML-данных, которые, похоже, работают.

Я пытался выполнить скрипт и нижнюю часть страницы, а также иметь $(document).ready внизу (я читал, что это может помочь). Но это не так.

Страница находится здесь, это часть верхней навигации под радио, часть ТВ: http://www.abc.net.au/triplej/default_nowplaying.htm

скрипт здесь: /triplej/scripts/triplej.listen.watch.js

Любые идеи приветствуются

Спасибо!

Ответы [ 3 ]

1 голос
/ 27 октября 2009

Проблема все еще возникает, если вы добавляете type="text/javascript" к соответствующему тегу <script>?

Что касается функций CSS, попробуйте их разложить, чтобы они не использовали многозначные свойства. Как вместо установки background-position на 0px 0px, установите background-position-top и background-position-left на 0px. Также имейте в виду, что IE6 плохо поддерживал CSS (по сравнению с большим количеством современных браузеров), поэтому вы можете проверить, будут ли другие свойства, которые не могут быть установлены с помощью jQuery, успешно устанавливаться с помощью обычных правил CSS.

0 голосов
/ 28 октября 2009

Спасибо за совет и вклад,

Оказывается, существует конфликт между исправлением ie png, которое глобально применяется на сайте, и этим сценарием, без которого он работает нормально.

Я уверен, что приведенные здесь предложения направлены на улучшение отформатированного кода, поэтому не все потеряно.

Теперь просто чтобы выяснить, как обойти эту проблему с исправлением png.

Еще раз спасибо.

0 голосов
/ 27 октября 2009

Возможно, вы также захотите проверить логику вашей программы и убедиться, что кнопки Active активны правильно. Вероятно, было бы неплохо использовать действительные логические значения true и false, а не строки «true» и «false». IE6, помимо плохой поддержки CSS, также имеет ошибки или, по крайней мере, различия в способах оценки выражений Javascript. Избегать маловероятных, но синтаксически правильных выражений - хорошее практическое правило для обеспечения согласованной оценки.

Мне также больше повезло с передачей структуры данных в css (), а не в строку. Например:

    $("#watch_tab").css( { "background-position-top":  "0px",
                           "background-position-left": "0px",
                       } );
    $("#watch_but").css( { "background-image": "" } );

Не могу сказать, что я выделил конкретную проблему, которую исправляет этот синтаксис, но я и моя команда разработчиков остановились на этом синтаксисе после написания большого количества кода JQuery и исправления множества ошибок совместимости браузера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...