这是一个数学问题,而不是编码问题......我正在创建一个散点图,其中的气泡也有不同的大小。我希望较大的尺寸具有比较小尺寸更低的z指数,以避免较大的尺寸站在较小尺寸上并且使得不可能进行交互。所以我需要一个公式按代码恢复该顺序。感谢
答案 0 :(得分:4)
只需使用尺寸并将其设为负值({{1}})。
编辑非负面选项。
var zIndex = size * -1;
您可以根据自己的喜好调整var zIndex = (1 / size) * 1000;
。对于较大的尺寸(保持在零以上),倒数将给出较小但正的浮点值。乘法为您提供了一个可以使用的数字。
答案 1 :(得分:0)
如果你知道气泡的数量,那么你可以从最大的一个零开始,最小的一个到气泡的总数。或者,您可以使用负Z标记。
答案 2 :(得分:0)
为了它的价值......
从性能的角度来看,最好的方法是在创建时计算并应用每个气泡的zIndex。
如果这不切实际或不可能,那么您可以按如下方式重新索引所有气泡:
function reindex_bubbles() {
var bubbleArr = $(".bubble").get().sort(function(a, b) {
return b.width() - a.width();//or possibly the other way round?
});
$.each(bubbleArr, function(i, bubble) {
bubble.attr('zIndex', i);
});
}
我们假设.width()
给出了气泡尺寸的可靠测量。如果没有,那么替换其他表达。