Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 带显示的嵌套HTML元素:无在IE8中不起作用_Javascript_Jquery_Css_Internet Explorer_Html - Fatal编程技术网

Javascript 带显示的嵌套HTML元素:无在IE8中不起作用

Javascript 带显示的嵌套HTML元素:无在IE8中不起作用,javascript,jquery,css,internet-explorer,html,Javascript,Jquery,Css,Internet Explorer,Html,我使用jQuery淡入包含元素的元素 外部元素是显示:无,位置:固定,和z索引:5。内部元素为位置:绝对 基本上,文章给出了一个框架,内部部分保存了内容并有一个滚动条 我逐渐淡入外部元素,并期望内部也会如此 在IE9+、FF和Chrome中,它可以按预期工作 在IE8中,它不是。外部文章根本不会淡入-保持不可见,内部部分相对于浏览器框架定位,并且始终可见。页面上的其他元素都是歪斜的,页面基本上没有功能 代码示例: article { display: none; position: fi

我使用jQuery淡入包含
元素的
元素

外部元素是
显示:无
位置:固定
,和
z索引:5
。内部元素为
位置:绝对

基本上,文章给出了一个框架,内部部分保存了内容并有一个滚动条

我逐渐淡入外部元素,并期望内部也会如此

在IE9+、FF和Chrome中,它可以按预期工作

在IE8中,它不是。外部文章根本不会淡入-保持不可见,内部部分相对于浏览器框架定位,并且始终可见。页面上的其他元素都是歪斜的,页面基本上没有功能

代码示例:

article
{
  display: none;
  position: fixed;
  z-index: 5;
}

section
{
  position: absolute;
  top: 10px;
  right: 10px;
  bottom: 10px;
  left: 10px;
  overflow: auto;
}


IE8及以下版本不支持HTML5标记,如
文章
部分


IE8及以下版本不支持HTML5标记,如
文章
部分


我创建了一个新的JSFIDLE,用div替换了article/section标记。它现在工作得更好了,但是内部div始终可见,而不管外部div的当前不透明度如何。请参见:这是IE中动画的工作方式。-工作如预期。第一次延迟只是为了显著性。好的,我可以这样做。但这是一个非常简单的例子。在我的真实页面中,我在#eSection内的几十个级别中有无数嵌套元素。我是否需要fadeIn()每个级别中的每个元素,还是因为#eSection是position:absolute,这使得IE这么做?我是否需要法代因()所有位置:绝对后代?谢谢阿泰姆。这将如何影响性能?如果我有一个bajillion子元素,javascript引擎疯狂地试图为它们的不透明性设置动画,那么普通的计算机会结巴吗?我的开发机器是一个野兽,所以对我来说运行非常平稳。您的方法与仅在父元素中设置动画(如我的原始示例中)之间是否存在性能差异?用户看到了同样的东西,但是JS正在为所有子元素制作动画,而不是一个。是的,IE中的选择器和动画非常慢,尤其是在大型DOM中。查看此演示文稿,了解jQuery性能提示和技巧:。我要使用的第一件事是缓存选择器的容器:我创建了一个新的JSFIDLE,用div替换article/section标记。它现在工作得更好了,但是内部div始终可见,而不管外部div的当前不透明度如何。请参见:这是IE中动画的工作方式。-工作如预期。第一次延迟只是为了显著性。好的,我可以这样做。但这是一个非常简单的例子。在我的真实页面中,我在#eSection内的几十个级别中有无数嵌套元素。我是否需要fadeIn()每个级别中的每个元素,还是因为#eSection是position:absolute,这使得IE这么做?我是否需要法代因()所有位置:绝对后代?谢谢阿泰姆。这将如何影响性能?如果我有一个bajillion子元素,javascript引擎疯狂地试图为它们的不透明性设置动画,那么普通的计算机会结巴吗?我的开发机器是一个野兽,所以对我来说运行非常平稳。您的方法与仅在父元素中设置动画(如我的原始示例中)之间是否存在性能差异?用户看到了同样的东西,但是JS正在为所有子元素制作动画,而不是一个。是的,IE中的选择器和动画非常慢,尤其是在大型DOM中。查看此演示文稿,了解jQuery性能提示和技巧:。我要使用的第一件事是缓存选择器的容器:
<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
  </head>
  <body>
    <article id="contentFrame">
      <section id="content">
        Lorem Ipsum
      </section>
    </article>
  </body>
</html>
$("#contentFrame").fadeIn(2000);