UNPKG

browsernizr

Version:

Modernizr wrapper for use with browserify

50 lines (41 loc) 1.3 kB
/*! { "name": "input[form] Attribute", "property": "formattribute", "tags": ["attribute", "forms", "input"], "builderAliases": ["forms_formattribute"] } !*/ /* DOC Detects whether input form="form_id" is available on the platform E.g. IE 10 (and below), don't support this */ var Modernizr = require('./../../lib/Modernizr.js'); var createElement = require('./../../lib/createElement.js'); var docElement = require('./../../lib/docElement.js'); Modernizr.addTest('formattribute', function() { var form = createElement('form'); var input = createElement('input'); var div = createElement('div'); var id = 'formtest' + (new Date()).getTime(); var attr; var bool = false; form.id = id; //IE6/7 confuses the form idl attribute and the form content attribute, so we use document.createAttribute try { input.setAttribute('form', id); } catch (e) { if (document.createAttribute) { attr = document.createAttribute('form'); attr.nodeValue = id; input.setAttributeNode(attr); } } div.appendChild(form); div.appendChild(input); docElement.appendChild(div); bool = form.elements && form.elements.length === 1 && input.form === form; div.parentNode.removeChild(div); return bool; });