X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/68a3df4d53c84508bf443058040379c3a18eb1a7..3e7bc943fe03dcd74666b6f26b3a831e06cac1d8:/vendor/assets/javascripts/html5shiv.js diff --git a/vendor/assets/javascripts/html5shiv.js b/vendor/assets/javascripts/html5shiv.js index 94324d7c8..45ea723dd 100644 --- a/vendor/assets/javascripts/html5shiv.js +++ b/vendor/assets/javascripts/html5shiv.js @@ -1,10 +1,10 @@ /** -* @preserve HTML5 Shiv prev3.7.1 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed +* @preserve HTML5 Shiv 3.7.3 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed */ ;(function(window, document) { /*jshint evil:true */ /** version */ - var version = '3.7.0'; + var version = '3.7.3'; /** Preset options */ var options = window.html5 || {}; @@ -82,7 +82,25 @@ return typeof elements == 'string' ? elements.split(' ') : elements; } - /** + /** + * Extends the built-in list of html5 elements + * @memberOf html5 + * @param {String|Array} newElements whitespace separated list or array of new element names to shiv + * @param {Document} ownerDocument The context document. + */ + function addElements(newElements, ownerDocument) { + var elements = html5.elements; + if(typeof elements != 'string'){ + elements = elements.join(' '); + } + if(typeof newElements != 'string'){ + newElements = newElements.join(' '); + } + html5.elements = elements +' '+ newElements; + shivDocument(ownerDocument); + } + + /** * Returns the data associated to the given document * @private * @param {Document} ownerDocument The document. @@ -103,7 +121,7 @@ * returns a shived element for the given nodeName and document * @memberOf html5 * @param {String} nodeName name of the element - * @param {Document} ownerDocument The context document. + * @param {Document|DocumentFragment} ownerDocument The context document. * @returns {Object} The shived element. */ function createElement(nodeName, ownerDocument, data){ @@ -187,7 +205,7 @@ 'var n=f.cloneNode(),c=n.createElement;' + 'h.shivMethods&&(' + // unroll the `createElement` calls - getElements().join().replace(/[\w\-]+/g, function(nodeName) { + getElements().join().replace(/[\w\-:]+/g, function(nodeName) { data.createElem(nodeName); data.frag.createElement(nodeName); return 'c("' + nodeName + '")'; @@ -244,7 +262,7 @@ * @memberOf html5 * @type Array|String */ - 'elements': options.elements || 'abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video', + 'elements': options.elements || 'abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video', /** * current version of html5shiv @@ -287,7 +305,10 @@ createElement: createElement, //creates a shived documentFragment - createDocumentFragment: createDocumentFragment + createDocumentFragment: createDocumentFragment, + + //extends list of elements + addElements: addElements }; /*--------------------------------------------------------------------------*/ @@ -298,4 +319,8 @@ // shiv the document shivDocument(document); -}(this, document)); + if(typeof module == 'object' && module.exports){ + module.exports = html5; + } + +}(typeof window !== "undefined" ? window : this, document));