Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.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 在IE中使用jQuery设置等高问题_Javascript_Jquery_Css_Internet Explorer - Fatal编程技术网

Javascript 在IE中使用jQuery设置等高问题

Javascript 在IE中使用jQuery设置等高问题,javascript,jquery,css,internet-explorer,Javascript,Jquery,Css,Internet Explorer,我在一个页面上有几个相同类别的元素,我试图让它们都具有相同的高度,即使其中的内容略有不同。我整合了一个小函数,它可以在Firefox2+和Safari3+中生成结果,但显然没有在IE7中注册。以下是我正在使用的: var tallestcopy = 0; $(".calloutL2Copy").each( function(index) { var tallest = $(this).height(); if (talles

我在一个页面上有几个相同类别的元素,我试图让它们都具有相同的高度,即使其中的内容略有不同。我整合了一个小函数,它可以在Firefox2+和Safari3+中生成结果,但显然没有在IE7中注册。以下是我正在使用的:

var tallestcopy = 0;
    $(".calloutL2Copy").each(
        function(index) {
            var tallest = $(this).height();
            if (tallest > tallestcopy) { 
                tallestcopy = tallest 
            }
        });
    $(".calloutL2Copy").css("height",tallestcopy);
其中“.callout L2copy”类应用于包含一些文本和临时图像的div。我还尝试将最后一行替换为:

$(".calloutL2Copy").height(tallestcopy);
同样,这在Firefox和Safari中有效,但对IE中的相同div没有影响。我已经验证了IE获得的最高像素值是正确的,只是没有将其应用于兄弟姐妹。有人能提供一些建议让这件事运作起来吗

更新:

下面是我尝试应用这项技术的网站上的代码示例。我没有编写代码(我知道有一个严重的div-itis案例),我只是试图修复CSS错误

<div id="calloutL2Top">
<div class="calloutL2">
    <a href="#"><img class="calloutL2Img" alt="" src="something.jpg" width="217" height="81"></a>
    <div class="calloutL2Copy">
        <h3>Lorem Ipsum</h3>
        Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
    </div>
</div>

<div class="calloutL2">
    <a href="#"><img class="calloutL2Img" alt="" src="something.jpg" width="217" height="81"></a>
    <div class="calloutL2Copy">
        <h3>Lorem Ipsum</h3>
        Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
    </div>
</div></div>

乱数假文
这是临时性的劳动和就业机会。但是,在最低限度上,我们需要一个实验室来进行日常工作。
乱数假文
这是临时性的劳动和就业机会。但是,在最低限度上,我们需要一个实验室来进行日常工作。
再次更新:

我得到了更高权力机构的批准,我将直接发布该网站的IP,并完成相关页面,以便您可以直接查看问题所在:

[网址已删除]

我试图修复的是主内容区域底部的一系列框。希望这会更有帮助。

你试过了吗

$(".calloutL2Copy").children().css("height",tallestcopy);
这应该将css样式应用于.callout L2copy的所有第一级子级


另外,您的HTML是如何嵌套的?您可以尝试的另一件事是在脚本运行时使用firebug Firefox,并查看到底是什么让您获得了价值。这可能会帮助你理解IE为什么不起作用。(如果你有IE8,它有开发工具,你也可以在脚本之后查看你的HTML,看看到底什么得到了css,什么没有)

我想你需要指定一个单位

$(".calloutL2Copy").css("height", tallestcopy + "px");
编辑:

我认为你是IE病毒的受害者。为了解决这个问题,我相信你需要一个明确的div作为你浮动父母的最后一个孩子

<div style="clear:both; font-size:1px; height:1px">&nbsp;</div>

编辑2:


查看站点的源代码。第一行需要是DOCTYPE,这里有一个奇怪的字符。吃什么

我使用HTML4.01 Strict DOCTYPE和您在问题中提供的确切代码创建了一个测试页面,它按照IE6、7和8中为我准备的方式工作。在CSS中可能有一个预设的高度或最小/最大高度被继承并导致冲突,或者在页面上的其他JavaScript中对高度进行了另一次操作


是否使用有效的doctype?元素是否为块级别?我认为IE将只对块级元素应用高度样式。@Fermin是的,doctype设置为HTML4.01@默认情况下,Josh div是块级元素,但即使显式设置display:block;在CSS中,div仍然不起作用。元素是否浮动?绝对定位?我已经添加了上面的代码示例,希望能够澄清一些问题。“callout L2”div浮动在左侧,但其中的所有内容都有规律地定位。面团…为什么我没有想到这一点。这可能是该脚本在IEI中无法运行的另一个很好的原因。我以前曾尝试过像这样添加px,但没有效果。我删除了浮动只是为了测试它,但仍然一无所获。我已经在我的原始问题中添加了该站点的IP,以供参考和阅读。谢谢你到目前为止所有的好主意。我根本看不到一个奇怪的角色。在我看来,第一行(换行除外)是doctype。在页面加载之前执行了大量PHP,因此我假设换行就是这样的结果。就这么简单。我修改了你的代码,因为.callout L2copy是我想要调整大小的,而不是它的子对象,我在下面的注释中添加了像素部分。我将选择器向上移动到容器中,它再次在Firefox和Safari中工作,但在IE中不工作。此外,当我使用Firebug时,它在CSS中显示高度被正确应用。我完全被难住了。你能用IE8中的开发工具看看IE在做什么吗?这就缩小了范围。该站点上还运行一些其他脚本,但它们主要用于传递变量和类似性质的内容。我想我的下一步是开始隔离CSS的各个部分,并查看被覆盖的内容。