javascript - 无法在页面刷新时获取元素宽度

标签 javascript css width element

我有以下代码:

  //get the largest block: if no block, apply to first block
  var previous = $('.block-grid .block-group .block.block-lg');

  var blocks = $('.block-grid .block-group .block');

  blocks.last().css({'left': (previous.width() + previous.position().left), 'top':    previous.position().top});

当我刷新页面时,这部分:previous.width(),返回0。通常应该返回400,这是最大块的大小。但是,当我导航到页面的 URL 时,它返回 400。为什么页面刷新会使宽度值变为 0?我很困惑,非常感谢任何帮助。

最佳答案

我实际上已经设法让它工作了。这是一个非常简单的解决方案。我只是将我的解决方案包装在 $(window).load() 中,所以它看起来像这样:

$(window).load(function(){

  //get the largest block: if no block, apply to first block
  var previous = $('.block-grid .block-group .block.block-lg');

  var blocks = $('.block-grid .block-group .block');

  blocks.last().css({'left': (previous.width() + previous.position().left), 'top':    previous.position().top});

});

关于javascript - 无法在页面刷新时获取元素宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27628941/

相关文章:

javascript - SVG渲染器函数

javascript - 是否有一个预先写好的低影响时间下拉列表,允许选择一天中的 1440 分钟中的任何一个?

css - 简单的 CSS 问题

jQuery 添加到当前宽度

javascript - 如何在 PWA 中显示共享照片?

javascript - Mandrill 的 Render API 会忽略映射到 Handlebars 变量的 merge_vars 吗?

jquery - 如何在wordpress中检测IE11并用if语句更改css?

html - 如何使用 float css 属性渲染一个没有任何内容的 span 标签?

css - CSS 中的类名冲突

html - div 宽度 100%,伪元素 :after :before and position absolute