js实现元素边框闪烁功能

<body>
  <input type="text" value="test" onclick="flash(this)">
 </body>
 <script>
 function flash(elem){
    var elem = typeof elem === ‘string‘ ? document.getElementById(elem) : elem, // 参数可接收id或者元素本身
        borderColor = elem.style.borderColor
    elem.style.borderColor = borderColor == ‘red‘ ? elem.borderColor : ‘red‘
    if (!elem.timer) {
        elem.times = 6
        elem.borderColor = borderColor // 保存元素原来的边栏样式
        elem.timer = setInterval(function() { flash(elem) }, 180) // 这里直接以元素当做参数, 提升执行效率
    } else {
        if (elem.times == 0) {
            clearInterval(elem.timer)
            elem.timer = null
        }
        elem.times--
    }
}
 
 </script>

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。