web 端实现在盒子类将指定的子节点随机排列,并不重叠
hashPosition 函数
参数 1:dom 对象
参数 2:数字时表明排列子元素宽高一样 只针对圆时一样,正方形时宽高都应该是正方形宽的根号 2 倍,参数为对象时
width: 指定子元素宽高固定
minWidth,maxWidth在子元素宽高在范围内时使用
space:指定子元素最小间隔,默认在为最大宽度的0.2倍
hashPosition(document.getElementById("hash-box"), 40)
hashPosition(document.getElementById("hash-box1"), {
minWidth: 20,
maxWidth: 50,
})
hashPosition(document.getElementById("hash-box2"), {
width: 30,
// 设置方向元素间的间隔 在45对角排列是元素中心点距离是30倍根号2,但width设置30时最小间距是30*0.2,这时需要手动调整间距
space: 30 * (Math.pow(2, 0.5) - 1),
})
hashPosition(document.getElementById("hash-box2"), {
width: 30,
// 与正方形思想一直,只是width是长方形的最大边
space: 30 * (Math.pow(2, 0.5) - 1),
})