我正在开发一个Angular2滑块组件,目前的设置是滑块的值是一个百分比(基于滑块手柄从0%到100%的位置)。我有一个包含n个项目的数组,并希望根据百分比(手柄所在位置)从该数组中获取相应的索引。
这是当前拖动事件(当用户拖动滑块手柄时触发):
百分比计算正确,但我想知道如何构建算法以通过百分比获取数组索引。所以,如果我在50%,并且数组长度为146,则希望获取数组索引73。
有没有一种更简单的使用JavaScript实现的方法?我已经完成了一个类似的组件,其中我采用了表格方法,但想找出一种不需要向页面添加“辅助 HTML 元素”的方法。
这是当前拖动事件(当用户拖动滑块手柄时触发):
handleDrag(evt, ui) {
let maxWidth = $('#slideBar').width() - 15;
let position = $('#slideHandle').css('left');
position = position.replace('px', '');
let percent = (+position / +maxWidth) * 100;
this.year = percent;
}
百分比计算正确,但我想知道如何构建算法以通过百分比获取数组索引。所以,如果我在50%,并且数组长度为146,则希望获取数组索引73。
有没有一种更简单的使用JavaScript实现的方法?我已经完成了一个类似的组件,其中我采用了表格方法,但想找出一种不需要向页面添加“辅助 HTML 元素”的方法。