【问题标题】:Jquery Isotope : How to fill empty gaps?Jquery Isotope:如何填补空白?
【发布时间】:2014-06-14 02:35:26
【问题描述】:

我基本上已经尝试了每一个提示/提示/建议来实现这一点,但是,我在使用 Isotope 时仍然得到了这些空的丑陋空间。

这是我正在经历的demo showing the problem

你看到这些空白了吗?是否有任何 jquery 代码可以让底部项目在有任何时候填补这个空白?

如果我们对所有项目使用单一宽度,则根本不会出现问题。当为每个项目使用不同的宽度时,它开始出现。同位素没有足够的智能来寻找空白并在有任何合适尺寸的物品可用时填充它们。

有什么帮助吗?我真的被困住了!

可能有助于解决此问题的补充问题:

有没有强制元素浮动的 jQuery 插件?我相信它可以迫使合适的物品填补空白!

【问题讨论】:

  • 我认为您需要编写一些 javascript 并手动修复它们。
  • 我不是一个写代码的人 :~) 我只使用那里的东西 :~D 所以,从头开始写任何东西对我来说不是一个选择!

标签: jquery jquery-isotope


【解决方案1】:

根据最新的编辑,现在有一个packery layout mode for isotope。原始答案和后来添加的内容保留在下面。


其他人也请求了此功能:

简而言之,目前的答案似乎是,如果您想完全避免空白,您应该:

  1. 选择固定宽度
  2. 根据元素的大小仔细排列元素,以便在您选择的宽度上不存在间隙。

当然,如果您的项目在大小和位置上不是静态的,或者您无法设置宽度,我无法想象这样会做得很好。

如果手动排列元素以填充固定宽度容器的间隙对您不起作用,我建议在第一个链接上加上 +1。


E (4.22.2013):我注意到最近的一些活动,所以快速更新。这些都可以在砌体问题 #141 中找到,第一个链接:

PerfectMasonry 是 Isotope 的布局扩展。它通过提供“perfectMasonry”布局模式和提供无间隙布局的选项来填补空白。

Nested 是用于无间隙布局的替代库。

Packery 是 Isotope 创建者的一个库,支持无间隙布局等。

我个人还没有使用过这些(还)。

最后,在 his blog post about Packery's release,DeSandro 表示“最终,我想将 Packery 中开发的这个和其他解决方案移植到 Masonry 和 Isotope。”

我不会指望这会很快发生。截至本次编辑,Packery 仅发布了 7 天。

E2 (6.13.2014):

DeSandro 已发布packery layout mode for isotope

【讨论】:

  • 感谢您的回答。虽然,它并不能解决问题。我已经从插件的 Github 页面检查了上述链接,但到目前为止还没有运气。我希望如果有人找到一个手工制作的解决方案:~) 因为插件的创建者不会做任何事情,除非它被广泛要求。
  • 我知道它不能解决问题,但它确实提供了当前唯一可用的选项,无需实施新的布局模式或等待 desandro(或其他人)实施。跨度>
  • 是的!感谢您的意见:~)
  • 自 2012 年 8 月以来有很多发展,所以我更新了一些来自砌体问题 #141 的最新信息。如果您继续使用 Isotope,您可能会对 PerfectMasonry 最感兴趣,因为它通过更改选项提供就地解决方案。
  • PerfectMasonry 为我做了。
【解决方案2】:

我试图解释为什么这是in this duplicate thread,其中还包括一个可以玩的小提琴。不一定是固定宽度,如果你有很多像原始演示中的小物品,贴合的可能性很高,但不能保证。您可以使用替代插件,例如 jQuery Tiles 或尝试调整 Wookmarks。

在您的情况下实现并非易事,请参阅what's involved 并搜索一些与之相关的图像,您会发现所涉及的复杂性。

【讨论】:

  • 我不应该那么复杂 :~) 我的意思是,在我发布的演示中,项目的大小符合逻辑增长。它们具有可以成倍增加的基本尺寸,使其适合多列或/和行。在我的想象中,我们需要一些插件来简单地强制浮动元素填充空白点。看起来和听起来都很简单 :~D 但我不知道为什么没有人能做到这一点!
  • 我已经尝试过 Wookmarks。它不支持不同的宽度。这个插件的创建者说它只支持一个适合他需要的宽度集......所以,他不会扩展它来支持多个宽度项目。
  • jQuery Tiles 看起来很旧,很久没有更新了...我找不到任何一致的演示...所以,我放弃了它。但是感谢您的提示:~)
  • 请参阅metafizzy.co/blog/mythical-drag-drop-multi-column-grid-plugin,为什么这并不像听起来那么简单。但是,无论如何,装箱算法既不是黑魔法也不是火箭科学,但是据我了解您的预期功能,在这里实现它们需要相当多的编码水平。您可以开始搜索 Java 实现或处理,或查找一些 MATLAB 代码,看看您是否可以调整它。然后,您可以发布一些不错的插件、WP 模板 - 并获得荣誉 :)
猜你喜欢
  • 2015-08-19
  • 2017-09-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-04
  • 1970-01-01
  • 1970-01-01
  • 2010-12-25
相关资源
最近更新 更多