jquery的选择器虽然强大,但是对于一些不符合严格规范的html结构,也会得到意想不到的结果:
<body>
<p>
thanks
<div>
I am yuanfang
</div>
</p>
</body>
如上,html结构如上,然后执行如下的jquery代码,就不会产生效果:
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(‘p div‘).css(‘background‘,‘purple‘);
});
</script>
页面中的div标记中的文本并不会变颜色,因为最终浏览器解析得到的dom树结构是如下所示的:
所以不符合p div 这样存在父子级关系的选择条件。
其实主要是html结构并不符合规范,原因是p标签里只能有文本,而用户却强加很多其他的标签所造成的
时间: 2024-10-05 16:50:29