2014-02-17 2 views

ответ

18

Недопустимые значения будут отклонены при присвоении объекту .type элемента input.

try { 
    var input = document.createElement("input"); 

    input.type = "time"; 

    if (input.type === "time") { 
     console.log("supported"); 
    } else { 
     console.log("not supported"); 
    } 
} catch(e) { 
    console.log("not supported"); 
} 

Если есть какая-то проблема в браузере я не в курсе, то с помощью .innerHTML должны делать то же самое.

var div = document.createElement("div"); 
div.innerHTML = "<input type='time'>"; 

if (div.firstChild.type === "time") 
    console.log("supported"); 
else 
    console.log("not supported"); 
+0

Что относительно IE @cookiemonster? – Kehlan

+0

@kehrk: Просто попробовал это с IE8, и это заставило исключение. Отлично. –

+0

Не волнует IE8, только последняя версия. @ T.J.Crowder – Kehlan

0

Я думаю, что ваш лучший вариант - проверить поддержку браузера и программно использовать его.

http://caniuse.com/input-datetime

+4

Лучше всего использовать тестер-тест, а не браузер-тест. –

Смежные вопросы