Skip to content

Commit 4fdeba5

Browse files
committed
fix #76 removeClass
1 parent be74193 commit 4fdeba5

File tree

2 files changed

+9
-4
lines changed

2 files changed

+9
-4
lines changed

src/utils.js

+6-3
Original file line numberDiff line numberDiff line change
@@ -221,9 +221,12 @@ var utils = module.exports = {
221221
if (hasClassList) {
222222
el.classList.remove(cls)
223223
} else {
224-
el.className = (' ' + el.className + ' ')
225-
.replace(' ' + cls + ' ', '')
226-
.trim()
224+
var cur = ' ' + el.className + ' ',
225+
tar = ' ' + cls + ' '
226+
while (cur.indexOf(tar) >= 0) {
227+
cur = cur.replace(tar, ' ')
228+
}
229+
el.className = cur.trim()
227230
}
228231
}
229232
}

test/unit/specs/utils.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -341,8 +341,10 @@ describe('UNIT: Utils', function () {
341341

342342
it('should work', function () {
343343
var el = document.createElement('div')
344-
el.className = 'hihi hi'
344+
el.className = 'hihi hi ha'
345345
utils.removeClass(el, 'hi')
346+
assert.strictEqual(el.className, 'hihi ha')
347+
utils.removeClass(el, 'ha')
346348
assert.strictEqual(el.className, 'hihi')
347349
})
348350

0 commit comments

Comments
 (0)