【问题标题】:Same height of boxes works just after refresh刷新后相同高度的盒子可以工作
【发布时间】:2015-06-23 21:39:16
【问题描述】:

我使用这个脚本来处理相同高度的盒子

<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.11.2.min.js">
$(document).ready(function(){

    var highestBox = 0;
        $('.box').each(function(){  
                if($(this).height() > highestBox){  
                highestBox = $(this).height();  
        }
    });    
    $('.box').height(highestBox);

});
</script>

但实际上它的工作方式有点奇怪。首先它从数据库加载数据,然后它应该这样做,但它没有,所以我需要刷新页面以获得我在页眉中使用它的效果,就像在页脚中一样。没有改变任何建议我做错了什么? 页面是 matus-satara.com 你可以现场查看 :)

【问题讨论】:

  • 您是否检查了 flexbox 以使用 css 进行操作?检查这个:osvaldas.info/…
  • 我没有时间重做 flexbox,但在下一个项目中,我会用你说谢谢你的帖子的方式来制作它们 :)

标签: jquery css height refresh box


【解决方案1】:

您不能在同一个脚本标签中同时拥有 src 和实际内容。

像这样分开脚本:

<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.11.2.min.js"></script>
<script>
$(document).ready(function(){

    var highestBox = 0;
        $('.box').each(function(){  
                if($(this).height() > highestBox){  
                highestBox = $(this).height();  
        }
    });    
    $('.box').height(highestBox);

});
</script>

【讨论】:

  • 对不起,我只是把它贴错了 :-) 检查网站,我认为它是好的
  • 实际上我没有注意到您添加了另一个脚本 :) 这是正确的一种方式,您需要将其放置在网站底部的页脚中的所有内容对我有用 :)跨度>
  • 我认为您所描述的行为取决于许多因素(例如缓存),但重要的是要有正确的 HTML 语法。
  • 这是因为我在内容中包含它,这意味着在第一次加载脚本后没有执行任何操作,因为页面没有加载。下一次刷新是页面加载,因此它执行了脚本:)正如我所说,我必须将它真正移动到网站的底部,并且它可以工作,因为您修复了我的错误 :)
【解决方案2】:

如果你不需要支持IE9,给父容器样式display: flex,这样所有子容器都长到一样高。 http://caniuse.com/#feat=flexbox

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-25
    • 2020-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多