Модернизр только для одной быстрой проверки? - PullRequest
9 голосов
/ 04 ноября 2011

Я хочу проверить, работает ли браузер на моей странице способен обрабатывать заполнитель html 5

Я знаю, что могу добавить следующую проверку JavaScript:

!Modernizr.input.placeholder

но стоит ли импортировать библиотеку только для одной проверки?

также, как Modernizr делает это для меня (я имею в виду, как это реализовано под прикрытием)?

Ответы [ 4 ]

9 голосов
/ 04 ноября 2011

Если вы хотите проверить поддержку placeholder, все, что вам нужно сделать, это;

var placeholderSupport = "placeholder" in document.createElement("input");

И чтобы ответить на ваш другой вопрос; нет , абсолютно бессмысленно включать всю библиотеку Modernizr для 1 строки JS (Modernizr - это более 1000 строк ....

* Да, не минимизировано, но концепция остается

7 голосов
/ 04 ноября 2011

Вы можете просто получить то, что вам нужно от modernizr, просто выбрав «Входные атрибуты», например, и сгенерировать сборку

http://www.modernizr.com/download/

3 голосов
/ 04 ноября 2011

Это с открытым исходным кодом. Иди почитай.

Modernizr['input'] = (function( props ) {
  for ( var i = 0, len = props.length; i < len; i++ ) {
    attrs[ props[i] ] = !!(props[i] in inputElem);
  }
  return attrs;
})(('autocomplete autofocus list placeholder max min ' +
    'multiple pattern required step').split(' '));
1 голос
/ 04 ноября 2011

Нашел это: http://davidwalsh.name/html5-placeholder

Код:

function hasPlaceholderSupport() {
  var input = document.createElement('input');
  return ('placeholder' in input);
}

Существует также запасное решение, нажав на ссылку

...