javascript - 无法获取 Packery 项目布局顺序
问题描述
我正在尝试使用 Packery 制作混合宽度/固定高度框的布局。
虽然我可以让 Packery 工作,并且可以很好地布局——我需要知道布局完成后屏幕上显示的顺序(而不是 DOM 的顺序),以便我可以对某些块进行一些调整(如果是)前面是另一个特定的块类型。
我有三个“块大小”—— 100%
、33.3333%
(1/3) 和66.6667%
(2/3)。这意味着,在某些情况下,如果有一个狭窄的块 (1/3) 可以紧挨着更小的块,则屏幕上的块位置与 DOM 不同(例如,向上)。
基本上我需要这个解决方案(在拖放后刷新项目的索引/位置)但在加载时:https ://codepen.io/desandro/pen/mdJnF 。这篇 SO 帖子也提出了这个问题(略有不同,解决方案相同):确定带有包装的物品的对齐顺序
当我尝试实现代码来获取元素及其位置时,它只是吐出 DOM 顺序,把东西扔掉。我一生都无法弄清楚为什么它不起作用。
此处提供的简化测试用例:https ://jsfiddle.net/4q73tbwe/1/
解决方案
所以,我弄清楚了问题所在。
默认情况下,布局方向是垂直的。定义解决问题的选项horizontal
,true
我现在得到正确的索引号。
推荐阅读
- javascript - JavaScript Firefox 自动将字符串转换为 NaN
- selenium - 打开浏览器后无法在边缘执行活动
- jquery - 如何使用 $.each 将 jquery 响应数据放入模态
- python - 图像未显示在 Excel 单元格中(python 和 openpyxl)
- batch-file - 与空格进行比较时,批处理 IF 语句给出语法错误
- c# - C# - 在主函数中使用异步
- segue - Swift4 Xcode9通过segue在ViewControllers之间传递变量
- xamarin - Syncfusion SfRating ValueChanged 事件到 Xamarin 表单中的命令
- r - 使用二元组创建共现矩阵
- java - 从 android 设备向 android things 发送命令