mirror of
https://github.com/twbs/bootstrap.git
synced 2024-12-01 13:24:25 +01:00
use only dataset to get data attributes
This commit is contained in:
parent
764bab2941
commit
08227506f2
@ -37,31 +37,13 @@ const Manipulator = {
|
||||
},
|
||||
|
||||
getDataAttributes(element) {
|
||||
if (typeof element === 'undefined' || element === null) {
|
||||
if (!element) {
|
||||
return {}
|
||||
}
|
||||
|
||||
let attributes
|
||||
if (Object.getOwnPropertyDescriptor(HTMLElement.prototype, 'dataset')) {
|
||||
attributes = {
|
||||
const attributes = {
|
||||
...element.dataset
|
||||
}
|
||||
} else {
|
||||
attributes = {}
|
||||
for (let i = 0; i < element.attributes.length; i++) {
|
||||
const attribute = element.attributes[i]
|
||||
|
||||
if (attribute.nodeName.indexOf('data-') !== -1) {
|
||||
// remove 'data-' part of the attribute name
|
||||
const attributeName = attribute
|
||||
.nodeName
|
||||
.substring('data-'.length)
|
||||
.replace(/-./g, (str) => str.charAt(1).toUpperCase())
|
||||
|
||||
attributes[attributeName] = attribute.nodeValue
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Object.keys(attributes)
|
||||
.forEach((key) => {
|
||||
|
Loading…
Reference in New Issue
Block a user