<!DOCTYPE html>
<html>
<head>
<style>
p { color:red; text-align:center; cursor:pointer;
font-weight:bolder; width:300px; }
</style>
<script src="http://code.jquery.com/jquery...
</head>
<body>
<p>Click here</p>
<p>to iterate through</p>
<p>these ps.</p>
<script>
$(document.body).click(function () {
$( "p" ).each(function (i) {
if ( this.style.color != "blue" ) {
this.style.color = "blue";
} else {
this.style.color = "";
}
});
});
</script>
</body>
</html>
代码中的this.style.color应该是获取不到值吧?因为获取不到style标签内的样式,但是程序是正常运行变色,能解释一下是为什么吗?
https://developer.mozilla.org...
this.style.color 是空字符串,满足下面的条件
所以点击还是会变色
在没有使用DOM对象进行
style
设置的时候,this.style.color
的值应该是空字符串:""
,所以this.style.color != "blue"
这个表达式的值应该是true
。