Don't inject style elements using innerHTML as they will go away in IE. Fixes #5977.

This commit is contained in:
jeresig 2010-02-13 03:30:45 -05:00
parent 14e1200d59
commit c1ac9fdf45
2 changed files with 7 additions and 2 deletions

View file

@ -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 ) ?

View file

@ -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();