Используйте Modernizr, чтобы добавить атрибут значения для ввода электронной почты - PullRequest
3 голосов
/ 31 мая 2011

Немного борется с синтаксисом.У меня есть форма электронной почты с настроенным текстом заполнителя.Для поддержки обратной совместимости я использую Modernizr для добавления атрибута Value к входным данным, но безуспешно.

Идеи?Спасибо за вашу помощь!

HTML:

<input type="email" name="email" id="email" class="corners" placeholder="Enter your email address" />

JavaScript:

if (!Modernizr.input.placeholder){
  setValue(document.getElementById('email'),'Enter your email address');
}

1 Ответ

1 голос
/ 16 августа 2012

Первоначально я думал, что отсутствие поддержки заполнителей может привести к проблемам при манипулировании значениями type = "email". При настройке быстрого jsFiddle мне удалось успешно обновить значение (testd в IE7).

Я заменил ваше имя помощника setValue на makePlaceholder и использовал в своем примере очень простую реализацию.

function makePlaceholder( el, placeholder ) {
    el.onfocus = function(){
        if( placeholder == el.value ) {
            el.value = '';
        }
    };
    el.onblur = function() {
        if( '' == el.value && placeholder != el.value ) {
            el.value = placeholder;
        }
    };
    el.value = placeholder;
}

Не стесняйтесь адаптировать это в своем решении, надеюсь, оно вам поможет.

...