8000 support svg class name for ie · bencode/vue@90869ba · GitHub
[go: up one dir, main page]

Skip to content

Commit 90869ba

Browse files
committed
support svg class name for ie
1 parent d1cce70 commit 90869ba

File tree

1 file changed

+13
-6
lines changed

1 file changed

+13
-6
lines changed

src/utils.js

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -256,36 +256,43 @@ var utils = module.exports = {
256256
},
257257

258258
/**
259-
* add class for IE9
259+
* add class for IE
260260
* uses classList if available
261261
*/
262262
addClass: function (el, cls) {
263263
if (el.classList) {
264264
el.classList.add(cls)
265265
} else {
266-
var cur = ' ' + el.className + ' '
266+
var cur = ' ' + utils.getClassName(el) + ' '
267267
if (cur.indexOf(' ' + cls + ' ') < 0) {
268-
el.className = (cur + cls).trim()
268+
el.setAttribute('class', (cur + cls).trim())
269269
}
270270
}
271271
},
272272

273273
/**
274-
* remove class for IE9
274+
* remove class for IE
275275
*/
276276
removeClass: function (el, cls) {
277277
if (el.classList) {
278278
el.classList.remove(cls)
279279
} else {
280-
var cur = ' ' + el.className + ' ',
280+
var cur = ' ' + utils.getClassName(el) + ' ',
281281
tar = ' ' + cls + ' '
282282
while (cur.indexOf(tar) >= 0) {
283283
cur = cur.replace(tar, ' ')
284284
}
285-
el.className = cur.trim()
285+
el.setAttribute('class', cur.trim())
286286
}
287287
},
288288

289+
/**
290+
* get class name for IE
291+
*/
292+
getClassName: function(el) {
293+
return (el.className instanceof SVGAnimatedString ? el.className.baseVal : el.className)
294+
},
295+
289296
/**
290297
* Convert an object to Array
291298
* used in v-repeat and array filters

0 commit comments

Comments
 (0)
0