如何使这个 jQuery 代码片段在 Internet Explorer 中工作?
如果说有一个时候讨厌 IE,那就是现在了。此代码以一个包含内容的框开始。单击按钮时,该框应该下拉并淡入。
<html>
<script type="text/javascript" src="jquery.js"></script>
<script type='text/javascript'>
function Test()
{
var item_height = $('#test').height();
$('#test').height(0);
$('#test').css('opacity','0');
$('#test').animate({ height: item_height, opacity: '1' },400);
}
</script>
<body>
<!-- The div below holds the sample content -->
<div id="test" style='border: 1px solid black;'>
Content<br>
Content<br>
Content<br>
Content<br>
Content
</div>
<!-- The button to test the animation -->
<br><br>
<div style='position: absolute; top: 150px; left: 10px;'>
<button onclick='Test();'>Test</button>
</div>
</body>
</html>
这个非常简单的示例适用于 Chrome、Safari 和 Opera。但是 Internet Explorer 呢? 不。
我怎样才能(如果可能的话)修复这个问题,以便它在 IE 中工作?
If there was ever a time to hate IE, this is it. This code begins with a box with content. When the button is clicked, the box is supposed to drop down and fade-in.
<html>
<script type="text/javascript" src="jquery.js"></script>
<script type='text/javascript'>
function Test()
{
var item_height = $('#test').height();
$('#test').height(0);
$('#test').css('opacity','0');
$('#test').animate({ height: item_height, opacity: '1' },400);
}
</script>
<body>
<!-- The div below holds the sample content -->
<div id="test" style='border: 1px solid black;'>
Content<br>
Content<br>
Content<br>
Content<br>
Content
</div>
<!-- The button to test the animation -->
<br><br>
<div style='position: absolute; top: 150px; left: 10px;'>
<button onclick='Test();'>Test</button>
</div>
</body>
</html>
This very simple example works on Chrome, Safari, and Opera. But Internet Explorer? No.
How can I (if it's even possible) fix this so that it works in IE?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
由于您缺少
标记和 doctype 声明,因此您的页面正在 Quirks 模式下呈现。把这个改成
这个
Because you are missing the
<head>
tag and doctype declaration, your page is being rendered in Quirks Mode. Change thisto this
我认为你的意思是在 IE 中,项目的高度不会改变。
元素的高度似乎没有正确设置为 0。当我更改
为 IE8
时它可以在我的 IE8 中工作我不知道这是为什么。 关于 height() 的文档 没有提及任何 IE 特定的怪癖。
I assume what you mean is that in IE, the item's height won't change.
The element's height doesn't seem to get set to 0 properly. It works in my IE8 when I change
to
I don't know why this is. The documentation on height() does not mention any IE specific quirks.