2012-10-27

HTML5 placeholder аттрибут в IE

Есть такой аттрибут в HTML5 - placeholder - он используется для создания серенькой подсказки для элементов ввода, что очень удобно. Большинство браузеров уже вовсю поддерживают placeholder, Но к сожалению, эта штука не работает в IE, и по этой причине placeholder используется не часто.

Сделал небольшой скрипт для jquery, который добавляет поддержку placeholder в этом замечательном браузере:

$(function(){
    //fix placeholders in IE
    if ($.browser.msie){
        $('input[placeholder]').each(function(){
            if (this.value==''){
                var original_value = this.value;
                var this1 = this;
                var value = this.value = this.getAttribute('placeholder');
                this.style.color = 'gray';
                $(this).focus(function(){
                    if (this.value==value){
                        this.value = '';
                        this.style.color = 'black';
                    }
                });
                $(this).blur(function(){
                    if (this.value==''){
                        this.value = value;
                        this.style.color = 'gray';
                    }
                });
                $(this.form).submit(function(){
                    //restore original value
                  if (this1.value==value){
                      this1.value = original_value;
                  }
                });
            }
        });
    }
});

Надеюсь, кому-нибудь поможет.

Upd. Обновил скрипт, сделал восстановление оригинальных значений при сабмите формы.

 

комментарии:

 
Евгений (анонимный пользователь) | 2012-12-21

Спасибо за решение. Помогло, перед этим еще три штуки перепробовал jquery фиксов.

Владимир (анонимный пользователь) | 2013-05-29

Огромное спасибо, помогло!

max | 2013-05-29

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

Владимир (анонимный пользователь) | 2013-05-30

Ну тогда ждем от вас новой версии :)

Медуза (анонимный пользователь) | 2013-06-20

Ваше решение очень помогло, спасибо

Марина (анонимный пользователь) | 2013-11-08

Ура! Получилось! Спасибо большое!

Павел Зверев (анонимный пользователь) | 2014-05-07

Спасибо огромное,скрипт очень помог :)

Для того чтобы каждый раз не представляться можно войти как зарегистрированный пользователь.

Имя*

разрешены только теги br, font, span, p, strong, u, p, blockquote, a, div, img - остальные будут безжалостно удаляться