在封装公用组件的时候,经常会用到动态给元素添加样式
思路:先判断这个dom有没有这个类,没有才给这个dom添加类
<body>
<div class="a"></div>
<script>
function hasClass(el,className) {
let reg = new RegExp('(^|\\s)'+className+'(\\s|$)')
return reg.test(el.className)
}
function addClass(el,className) {
if (hasClass(el,className)) {
return
}
let newClass = el.className.split(' ')
newClass.push(className)
el.className = newClass.join(" ")
}
addClass(document.getElementsByClassName("a")[0],'b')
</script>
</body>
往字符串里面添加某个字符串,先split切割成数组,把字符串push进去,再把数组join成字符串
网友评论