3 Star 54 Fork 14

Yaohaixiao / dom.js

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
setAttribute.js 1.07 KB
一键复制 编辑 原始数据 按行查看 历史
import isElement from './isElement'
import { FROM_ELEMENT_TAGS } from './utils/enum'
/**
* 给 DOM 节点设置属性/值
* ========================================================================
* @method setAttribute
* @param {HTMLElement} el - DOM 节点
* @param {String} attr - 属性名称
* @param {String|Number|Boolean} value - 属性值
*/
const setAttribute = (el, attr, value) => {
let tagName
if (!isElement(el)) {
return false
}
tagName = el.tagName.toLowerCase()
switch (attr) {
case 'className':
el.className = value
break
case 'htmlFor':
el.setAttribute('for', value)
break
case 'style':
el.style.cssText = value
break
case 'value':
if (FROM_ELEMENT_TAGS.indexOf(tagName) > -1) {
el.value = value
} else {
el.setAttribute(attr, value)
}
break
case 'innerText':
el.innerText = value
break
case 'innerHTML':
el.innerHTML = value
break
default:
el.setAttribute(attr, value)
break
}
}
export default setAttribute
JavaScript
1
https://gitee.com/yaohaixiao/dom.js.git
git@gitee.com:yaohaixiao/dom.js.git
yaohaixiao
dom.js
dom.js
main

搜索帮助