ie8 jquery parents() 获取多个的问题

今天开发的时候碰到了一个奇怪的问题

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
	<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
	<title>Document</title>
	<script type="text/javascript" src="./jquery.1.10.1.js"></script>
</head>
<body>
	<div id='div1'>
		<div id='div2'><p></p></div>
		<div id='div3' class='a'><input type="checkbox" id="1" class="box"></div>
		<div id='div4' class='a'><input type="checkbox" id="2" class="box"></div>
	</div>
	<script type="text/javascript">
		$(document).ready(function(){
			$(".box").on('click', function(event) {
				alert($(event.target).parents("div[class='a']").length);
			});
		}); 
	</script>
</body>
</html>

如上所示一样,例子很像是这个问题

http://stackoverflow.com/questions/17461452/ie-8-jquery-1-7-1-element-parentsselector-returns-siblings-also

当要点击id=1的checkbox时,获取的父元素是1个,

当要点击id=2的checkbox时,获取的父元素是2个,

而且ie9,chrome下面总是获取的是真确的,但是在ie8下面总是有这样的问题,让人很是心烦

正打算归结为jquery的问题的时候

最后发现是html没有闭合的原因导致的。

是因为html元素没有闭合,不要学坏。牢记啊

 

posted @ 2015-01-09 11:47  春哥也编程  阅读(1785)  评论(0编辑  收藏  举报