Атрибут Placeholder для входных тегов для IE?

Я знаю, что Internet Explorer не поддерживает атрибут placeholder для входных тегов, но, безусловно, в 2012 году должно быть другое решение для IE?

Ответы

Ответ 1

Я написал плагин jQuery некоторое время назад, который добавит поддержку заполнителя в любой браузер, который его не поддерживает.

Текст заполнителя в IE

Ответ 2

На самом деле IE поддерживает атрибут placeholder в 2012 году (версия 10). Соедините это с a polyfill для старых браузеров, и у вас должно быть хорошо округленное решение вашей проблемы.

Ответ 3

Мы используем этот плагин jQuery в производстве уже несколько недель и, похоже, отлично работаем.

http://webcloud.se/code/jQuery-Placeholder/

Ответ 6

Да, есть довольно простое решение для IE8 и IE9, потому что на террейных версиях IE он уже работает. (IE10, IE11 и т.д.)

Это решение, которое я нашел:

1. Обнаруживать версию Internet Explorer

<!--[if lt IE 10]>       
    <script type="text/javascript">var ie = 9;</script>      
<![endif]-->     
<!--[if lt IE 9]>                   
    <script type="text/javascript">var ie = 8;</script>          
<![endif]-->  

2. Закрепить местозаполнитель

if (typeof ie == 'undefined') var ie = 10;   
if (ie == 8 || ie == 9){  

    $("input[placeholder]").each(function() {
        this.value = $(this).attr('placeholder');
    });        

    $("input[placeholder]").focus(function() 
        if (this.value == $(this).attr('placeholder')) this.value = '';
    }).blur(function() {   
        if (this.value == '')
            this.value = $(this).attr('placeholder'); 
    });
}