From d4def22e4cd1c2eb2571f449e226b38384fb6d81 Mon Sep 17 00:00:00 2001 From: Sean Henderson Date: Thu, 3 Sep 2015 17:48:20 +0200 Subject: Manipulation: Switch rnoInnerhtml to a version more performant in IE IE versions greater than 9 do not handle the old regular expression well with large html content. This is due to the use of a non-capturing group after a very common html character (<). Test suite: http://jsfiddle.net/Lwa0t5rp/3/ Microsoft bug: https://connect.microsoft.com/IE/feedback/details/1736512/ Fixes gh-2563 Closes gh-2574 --- src/manipulation.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/manipulation.js b/src/manipulation.js index 227d0ef9e..b85ef1824 100644 --- a/src/manipulation.js +++ b/src/manipulation.js @@ -27,7 +27,11 @@ define( [ var rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi, - rnoInnerhtml = /<(?:script|style|link)/i, + + // Support: IE 10-11, Edge 10240+ + // In IE/Edge using regex groups here causes severe slowdowns. + // See https://connect.microsoft.com/IE/feedback/details/1736512/ + rnoInnerhtml = /