aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBatiste Bieler <batiste.bieler@gmail.com>2009-12-14 16:24:28 -0500
committerjeresig <jeresig@gmail.com>2009-12-14 16:24:28 -0500
commit649024909d376032e6e9c41f209182d584e51043 (patch)
treea3a19bbcb5ccd28f056fd13947e9a86473c49e0f /src
parentb4b30cc6837dc5480f3d1a3da0cb9fe12dfc9b72 (diff)
downloadjquery-649024909d376032e6e9c41f209182d584e51043.tar.gz
jquery-649024909d376032e6e9c41f209182d584e51043.zip
Enforce that hasClass and removeClass work even with tabs and endlines in class attributes. Fixes #5505.
Diffstat (limited to 'src')
-rw-r--r--src/attributes.js6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/attributes.js b/src/attributes.js
index 0b6d21ec1..17c18c9bf 100644
--- a/src/attributes.js
+++ b/src/attributes.js
@@ -1,3 +1,5 @@
+var rclass = /[\n\t]/g;
+
jQuery.fn.extend({
attr: function( name, value ) {
return access(this, name, value, true, jQuery.attr);
@@ -49,7 +51,7 @@ jQuery.fn.extend({
if ( elem.nodeType === 1 && elem.className ) {
if ( value ) {
- var className = " " + elem.className + " ";
+ var className = (" " + elem.className + " ").replace(rclass, " ");
for ( var c = 0, cl = classNames.length; c < cl; c++ ) {
className = className.replace(" " + classNames[c] + " ", " ");
}
@@ -67,7 +69,7 @@ jQuery.fn.extend({
hasClass: function( selector ) {
var className = " " + selector + " ";
for ( var i = 0, l = this.length; i < l; i++ ) {
- if ( (" " + this[i].className + " ").indexOf( className ) > -1 ) {
+ if ( (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) > -1 ) {
return true;
}
}