javascript - 同位素过滤 - 仅加载时的异常间距

标签 javascript jquery html jquery-isotope

我正在对一个使用同位素过滤的 PHP 网站进行一些维护,并且我仍在学习 Javascript。因此,我无法弄清楚如何解决同位素问题。

我的页面有 40 个图 block ,分为两个单独的部分。其中一个部分工作正常,没有错误。但在第二部分中,当我加载页面时,它会显示最后 10-12 个图 block (它会变化,看似随机)。

但是,每当我单击任何过滤器时,它都会正常工作,并将它们推到适当的间距。因此,问题仅在于页面初始加载期间的行为。

有谁知道什么可能导致此类问题?

最佳答案

尝试将 document.ready 更改为 window.load,这将使其在运行 isotope 之前等待图像下载。

$(document).ready(function() {
  // executes when HTML-Document is loaded and DOM is ready
  $.isotope();
});

$(window).load(function() {
  // executes when complete page is fully loaded, including all frames, objects and images
 $.isotope();
});

实际上,阅读 3rror404 发布的链接,您可以这样做

// layout Isotope again after all images have loaded
$container.imagesLoaded( function() {
  $container.isotope('layout');
});

关于javascript - 同位素过滤 - 仅加载时的异常间距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24496893/

相关文章:

javascript - 单击链接时如何显示iframe

PHP header() 不工作?

javascript - Google Maps Api 检查地点是否在路线上

javascript - 在meteor.js源码中调试

javascript - 我怎样才能通过将元素悬停在元素下来获得目标?

jquery - 获取输入并选择 id 开头和结尾的元素

javascript - 尝试删除此代码而不需要将其放在单独的页面中

JavaScript:如何从 JSON 数据获取特定值

javascript - 禁用图例单击 NVD3 多图

javascript - 如何使一列始终突出显示