Заполнитель не отображаются в IE8 для Bootstrap

Я использую Bootstrap для моего проекта. Заполнители отображаются отлично для всех браузеров, за исключением Internet Explorer 8 и ниже.

Есть ли какие-либо решения для получения поддержки заполнителя в IE8?

Ответы

Ответ 3

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

var test = document.createElement('input');
if (!('placeholder' in test)) {
    $('input').each(function () {
        if ($(this).attr('placeholder') != "" && this.value == "") {
            $(this).val($(this).attr('placeholder'))
                   .css('color', 'grey')
                   .on({
                       focus: function () {
                         if (this.value == $(this).attr('placeholder')) {
                           $(this).val("").css('color', '#000');
                         }
                       },
                       blur: function () {
                         if (this.value == "") {
                           $(this).val($(this).attr('placeholder'))
                                  .css('color', 'grey');
                         }
                       }
                   });
        }
    });
}

Ответ 5

IE9 и ниже не поддерживают атрибут placeholder. См. this

Вы можете использовать подсказки EZPZ, чтобы дополнить его. Просто загрузите script, если браузер IE

 <!--[if lt IE 10]>
      <script src="PATHTOFILE"></script>
    <![endif]-->

В подсказках EZPZ вы можете продолжать использовать placeholder для современных браузеров.

Пример:

<input type="text" id="search" placeholder="Search" />

$("input[type=text]").ezpz_hint();