Приложение jquery работает только в FF3.5, IE8 выдает ошибки, а Chrome3 зависает!

Кто-нибудь еще испытал это? Я получаю множество ошибок JS, связанных с разметкой jquery, например, следующая строка кода работает в FF, но генерирует ошибку «Объект не поддерживает это свойство или метод» в IE.

$("input[type=text]").css("border","1px solid grey");

Chrome не выдает мне ту же ошибку, но блокируется, когда я выполняю автозаполнение. Автозаполнение отлично работает в FF.

Это очень странно для меня. Я даже не знаю, с чего начать отладку этого!

Если кто-то хочет увидеть, о чем я говорю, я предоставлю свой URL.

  $("#med").autocomplete("ajax-getAllMeds.php", {
            selectFirst: false,
            autoFill: true,
            max: 20,
            minchars: 2,
            cache: 30
  });

edit: я удалил функцию автозаполнения. Когда вы нажимаете на одно из лекарств вверху страницы, текст нормально загружается в FF, но не в IE и Chrome.


person acedanger    schedule 03.10.2009    source источник
comment
Простая страница с одним входом и строкой кода, которую вы указали, прекрасно работает в IE8 и Chrome. Хотите поделиться большей частью страницы?   -  person Oren Trutner    schedule 03.10.2009
comment
Все еще нужно больше кода. Недостаточно, чтобы понять это. Возможно, вам следует сделать URL доступным.   -  person tvanfosson    schedule 03.10.2009
comment
проверьте bit.ly/ljcJO   -  person acedanger    schedule 03.10.2009
comment
В Firefox 3.0.14 на X64-64 Linux не вижу текста при нажатии на различные ЛС. Я также не вижу никакого текста при нажатии на лекарства в альфа-версии Chrome на Linux. Две страницы выглядят одинаково, за исключением того, что поля идут справа от экрана в Chrome и слева в Firefox. Konqueror ведет себя как Chrome.   -  person ZachS    schedule 03.10.2009
comment
ага, именно это и происходит в IE8 и Chrome, нет текста при нажатии на разные ЛС. Я не уверен, почему его нет в этих браузерах, когда он правильно отображается в FF3.5 в Windows Vista и XP.   -  person acedanger    schedule 04.10.2009


Ответы (2)


Мне кажется, что jQuery не загружается в IE8. У вас случайно нет какой-либо условной логики, специфичной для IE, в вашей разметке, не так ли? Мне нужно больше кода, чтобы решить проблемы с Chrome.

person tvanfosson    schedule 03.10.2009
comment
похоже, это связано с моей логикой автозаполнения: $(#med).autocomplete(ajax-getAllMeds.php, {selectFirst: false, autoFill: true, max: 20, minchars: 2, cache: 30 }); - person acedanger; 03.10.2009
comment
о, и нет, там нет условной логики IE - person acedanger; 03.10.2009
comment
Я не думаю, что вы могли бы добавить код вопроса. Как-то тяжело читать комментарий. - person tvanfosson; 03.10.2009

Я бы порекомендовал вам попытаться разделить CSS на несколько свойств границы, поскольку я думаю, что большинство браузеров не сопоставляют многокомпонентные свойства напрямую с соответствующими компонентами, когда CSS задается через свойства DOM в JavaScript.

Мое предложение:

$("input[type=text]").css({
  "border-size": "1px",
  "border-style": "solid",
  "border-color": "grey"});
person Miguel Ventura    schedule 03.10.2009