From d8a35011ec05ed3493a85c1bd699902893cd437c Mon Sep 17 00:00:00 2001 From: Richard Gibson Date: Mon, 13 May 2013 21:55:00 -0400 Subject: [PATCH] Fix #13835: classes separated by form feed --- src/attributes.js | 2 +- test/unit/attributes.js | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/attributes.js b/src/attributes.js index ace917e91..f7525755f 100644 --- a/src/attributes.js +++ b/src/attributes.js @@ -1,5 +1,5 @@ var nodeHook, boolHook, - rclass = /[\t\r\n]/g, + rclass = /[\t\r\n\f]/g, rreturn = /\r/g, rfocusable = /^(?:input|select|textarea|button)$/i; diff --git a/test/unit/attributes.js b/test/unit/attributes.js index 062dd504c..84ac8c2b2 100644 --- a/test/unit/attributes.js +++ b/test/unit/attributes.js @@ -1353,6 +1353,26 @@ test( "contents().hasClass() returns correct values", function() { ok( !$contents.hasClass("undefined"), "Did not find 'undefined' in $contents (correctly)" ); }); +test( "hasClass correctly interprets non-space separators (#13835)", function() { + expect( 4 ); + + var + map = { + tab: " ", + "line-feed": " ", + "form-feed": " ", + "carriage-return": " " + }, + classes = jQuery.map( map, function( separator, label ) { + return " " + separator + label + separator + " "; + }), + $div = jQuery( "
" ); + + jQuery.each( map, function( label ) { + ok( $div.hasClass( label ), label.replace( "-", " " ) ); + }); +}); + test( "coords returns correct values in IE6/IE7, see #10828", function() { expect( 1 );