Skip to content
Permalink
Browse files

Don't inject style elements using innerHTML as they will go away in I…

…E. Fixes #5977.
  • Loading branch information
jeresig committed Feb 13, 2010
1 parent 14e1200 commit c1ac9fdf45632f0e0d1f7183500ce45dde7319d7
Showing with 7 additions and 2 deletions.
  1. +1 −1 src/manipulation.js
  2. +6 −1 test/unit/manipulation.js
@@ -5,7 +5,7 @@ var rinlinejQuery = / jQuery\d+="(?:\d+|null)"/g,
rtagName = /<([\w:]+)/,
rtbody = /<tbody/i,
rhtml = /<|&#?\w+;/,
rnocache = /<script|<object|<embed|<option/i,
rnocache = /<script|<object|<embed|<option|<style/i,
rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i, // checked="checked" or checked (html5)
fcloseTag = function( all, front, tag ) {
return rselfClosing.test( tag ) ?
@@ -866,7 +866,7 @@ test("clone() on XML nodes", function() {
}

var testHtml = function(valueObj) {
expect(29);
expect(31);

jQuery.scriptorder = 0;

@@ -886,6 +886,11 @@ var testHtml = function(valueObj) {
equals( jQuery("<div/>").html(valueObj("&#160;"))[0].innerHTML, "&nbsp;", "Make sure entities are passed through correctly." );
equals( jQuery("<div/>").html(valueObj("&amp;"))[0].innerHTML, "&amp;", "Make sure entities are passed through correctly." );

jQuery("#main").html(valueObj("<style>.foobar{color:green;}</style>"));

equals( jQuery("#main").children().length, 1, "Make sure there is a child element." );
equals( jQuery("#main").children()[0].nodeName.toUpperCase(), "STYLE", "And that a style element was inserted." );

reset();
// using contents will get comments regular, text, and comment nodes
var j = jQuery("#nonnodes").contents();

0 comments on commit c1ac9fd

Please sign in to comment.
You can’t perform that action at this time.