]> source.dussan.org Git - jquery.git/commitdiff
Core: add support to tag-hyphenated elements
authorLeonardo Braga <leonardo.braga@gmail.com>
Sun, 4 Jan 2015 22:48:35 +0000 (17:48 -0500)
committerOleg Gaidarenko <markelog@gmail.com>
Tue, 13 Jan 2015 04:48:33 +0000 (07:48 +0300)
Ref #1987
Ref 534f13025aeb59a7d5893ce62efafa0b066a4934

src/core/var/rsingleTag.js
test/unit/core.js

index 7e7090b77b3d80ea1a3c12e985db469dd6b72a63..a8176dc647a969283e37f0a60c360a5cfe00c4de 100644 (file)
@@ -1,4 +1,4 @@
 define(function() {
        // Match a standalone tag
-       return (/^<(\w+)\s*\/?>(?:<\/\1>|)$/);
+       return (/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/);
 });
index 8fb260ed55ff8b92529176722e0814b3dc2323be..370484b2547e2504a3dc0fd4447935851a113119 100644 (file)
@@ -599,6 +599,19 @@ test("jQuery('html')", function() {
        equal( jQuery( "\\<div\\>" ).length, 0, "Ignore escaped html characters" );
 });
 
+test("jQuery(tag-hyphenated elements) gh-1987", function() {
+       expect( 17 );
+
+       jQuery.each( "thead tbody tfoot colgroup caption tr th td".split(" "), function( i, name ) {
+               var j = jQuery("<" + name + "-d></" + name + "-d>");
+               ok( j[0], "Create a tag-hyphenated elements" );
+               ok( jQuery.nodeName(j[0], name.toUpperCase() + "-D"), "Tag-hyphenated element has expected node name" );
+       });
+
+       var j = jQuery("<tr-multiple-hyphens></tr-multiple-hyphens>");
+       ok( jQuery.nodeName(j[0], "TR-MULTIPLE-HYPHENS"), "Element with multiple hyphens in its tag has expected node name" );
+});
+
 test("jQuery('massive html #7990')", function() {
        expect( 3 );