日期:2014-05-16  浏览次数:20452 次

jQuery slideDown()方法问题
求解.为何slideDown()方法只有IE10能实现滑动效果,其他所有浏览器都是直接弹出?

<html>
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
a{text-decoration:none;background:#666666;}
.z{background:#666666;color:white;margin:0px;border:1px solid #cccccc;}
div{margin-top:0px;width:200px;}
p{text-align:center;padding-top:3px;height:30px;}
.d p{background:#CCCCCC;margin:0px;border:1px solid #999999;height:25px;width:200px;}</style>
<script type="text/javascript" src="jquery-1.9.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$('.d').hide();
$('div').click(function(){
$(this).find('span').slideDown(1000),
fadeIn(1000);
});
});
</script>
</head>
<body>
<div>
<p class="z">Books</p>
<span class="d">
<a href="#"><p>C#</p></a>
<a href="#"><p>JavaScript</p></a>
<a href="#"><p>HTML</p></a>
<a href="#"><p>CSS</p></a>
</span></div>
</body>
</html>


jquery javascript

------解决方案--------------------
问题在于span是行内标签,不是块标签。行内标签没有高的概念。
修改方法一:把span改成div (你本身的html结构太不合理,好好改改)
修改方法二:你非要这结构就添加上css代码span{display:block}把sapn改成块显示
------解决方案--------------------
dtd写了吗?这是页面正确解析的首要条件。