JSFiddle - React, Tailwind, and code Playground
by gravof
HTML
<script src="http://www.modernizr.com/downloads/modernizr-latest.js"></script>
JavaScript
document.body.innerHTML = iv();
function iv() {
// Assuption No.1
if (!Modernizr.input.required) {
return false;
}
var form = document.createElement('form');
// Prevent form from being submitted
var submitFired = false;
form.onsubmit = function(e) {
e.preventDefault();
}
// Calling form.submit() doesn't trigger interactive validation,
// use a submit button instead
form.innerHTML = '<input required><button></button>';
// FF4 doesn't trigger invalid event on inputs
// if form is not in the DOM tree
form.style.display = 'none';
document.body.appendChild(form);
var input = form.getElementsByTagName('input')[0];
// Record whether "invalid" event is fired
var invaildFired = false;
input.oninvalid = function() {
invaildFired = true;
};
// Submit form by clicking submit button
var button = form.getElementsByTagName('button')[0];
button.click();
// Don't forget to remove form from the DOM tree
document.body.removeChild(form);
return invaildFired;
}