话不多说,直接上代码:1
2
3[].forEach.call($$("*"),function(a){
a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16)
});
话不多说,直接上代码:1
2
3[].forEach.call($$("*"),function(a){
a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16)
});
$$('*')等价于document.querySelectorAll('*')。JavaScript中的$$(*)代表什么和$选择器的由来
1<<24返回的是16777216(2^24),所以Math.random()*(1<<24)可以得到一个0 到 16777216之间的值;~操作符(按位取反操作),通过两次取返就可以得到纯整数部,我们还可以将~~视为parseInt的简写,所以~~(Math.random()*(1<<24))返回的是一个整数。最后颜色就是#000000~#FFFFFF。