我想到了通过使用彼此相邻放置的两个不同的HTML范围输入来构建范围滑块的想法。
由于一次只能有一个聚焦元素,我想出了一个解决方案,即当聚焦在它们之间发生变化时修改输入的最小值,最大值和宽度。
See my solution - 为webkit范围输入轨道和拇指使用自定义样式。
范围介于1到100之间。如果第一个输入为20且第二个输入获得焦点,我会将第一个输入最大值修改为20,并将第二个输入的最小值设置为21.然后我将设置宽度百分比值的输入取决于当前值。因此,上述第一个输入将获得20%的宽度,第二个80%将匹配所选的值。
由于输入的拇指在设置为最小值时将向左对齐,而在设置为最大值时向右对齐,因此会有一个小的跳跃"当焦点改变时,我修改了范围输入的最小值和最大值。拇指的宽度设置为1rem
,并且必须以某种方式将该值与输入本身的当前值一起考虑(我认为..)。我不能把最后一部分弄好。