У меня есть простой script в jQuery, который отлично работает с jQuery 1.5.2, как вы можете видеть в этом jsFiddle. Предполагается, что при переносе фокуса в текстовое поле значение по умолчанию удаляется. И если, если оставить поле пустым, исходное значение по умолчанию будет вставлено на место.
Однако тот же самый точный код, где используется только jQuery 1.6.3, не работает. (Не работает означает, что значение по умолчанию остается в текстовом поле, пока вы не удалите его вручную, как вы можете видеть в этом jsFiddle.
В консоли отсутствуют ошибки script, и другие функции функции работают. Вы можете видеть, что часть hover()
работает нормально как в jsFiddles.
Обобщенная версия (проблема с корнем)
jQuery 1.6.3 возвращает undefined
для .attr('defaultValue')
.
jsFiddle с помощью jQuery 1.6.3 (не работает)
Однако jQuery 1.5.2 возвращает ожидаемое значение для .attr('defaultValue')
.
jsFiddle с помощью jQuery 1.5.2 (рабочий)
Вопрос:
Кто-нибудь знает, почему это происходит? (Это выглядит как ошибка jQuery для меня.)
Далее все еще работает...
document.getElementById().defaultValue
... но я думаю, что это довольно уродливо, когда нужно сделать это, где доступен jQuery.
Я открыт для других предложений.