diff --git a/src/html5shiv-printshiv.js b/src/html5shiv-printshiv.js index 085708e..4fa9007 100644 --- a/src/html5shiv-printshiv.js +++ b/src/html5shiv-printshiv.js @@ -201,17 +201,20 @@ return createElement(nodeName, ownerDocument, data); }; - ownerDocument.createDocumentFragment = Function('h,f', 'return function(){' + - 'var n=f.cloneNode(),c=n.createElement;' + - 'h.shivMethods&&(' + - // unroll the `createElement` calls - getElements().join().replace(/[\w\-:]+/g, function(nodeName) { - data.createElem(nodeName); - data.frag.createElement(nodeName); - return 'c("' + nodeName + '")'; - }) + - ');return n}' - )(html5, data.frag); + ownerDocument.createDocumentFragment = function(h,f){ + return function(){ + var n=f.cloneNode(),c=n.createElement; + h.shivMethods&&( + // unroll the `createElement` calls + getElements().join().replace(/[\w\-:]+/g, function(nodeName) { + data.createElem(nodeName); + data.frag.createElement(nodeName); + return c("' + nodeName + '"); + }) + ); + return n; + }; + }(html5, data.frag); } /*--------------------------------------------------------------------------*/ diff --git a/src/html5shiv.js b/src/html5shiv.js index 45ea723..e49b4c0 100644 --- a/src/html5shiv.js +++ b/src/html5shiv.js @@ -201,17 +201,20 @@ return createElement(nodeName, ownerDocument, data); }; - ownerDocument.createDocumentFragment = Function('h,f', 'return function(){' + - 'var n=f.cloneNode(),c=n.createElement;' + - 'h.shivMethods&&(' + - // unroll the `createElement` calls - getElements().join().replace(/[\w\-:]+/g, function(nodeName) { - data.createElem(nodeName); - data.frag.createElement(nodeName); - return 'c("' + nodeName + '")'; - }) + - ');return n}' - )(html5, data.frag); + ownerDocument.createDocumentFragment = function(h,f){ + return function(){ + var n=f.cloneNode(),c=n.createElement; + h.shivMethods&&( + // unroll the `createElement` calls + getElements().join().replace(/[\w\-:]+/g, function(nodeName) { + data.createElem(nodeName); + data.frag.createElement(nodeName); + return c("' + nodeName + '"); + }) + ); + return n; + }; + }(html5, data.frag); } /*--------------------------------------------------------------------------*/