首页 > 解决方案 > jQuery UI - 从范围滑块中选择一个类

问题描述

我目前正在使用 jQuery UI range slider,我试图获取最小和最大处理程序的“左”属性的值。

为此,我将此 JavaScript 代码与#price_range 一起使用,在这种情况下,一切正常。

function GetLeftValue(){
   var element = document.getElementById('price_range'),
   left = element.getBoundingClientRect().left,
   windowWidth = window.innerWidth;
   var num = (Number(((left / windowWidth) * 100).toFixed(1))+ "%");
   alert(num);
} 

但是当我尝试将它与具有以下类的两个处理程序一起使用时:

.ui-slider-handle .ui-corner-all .ui-state-default 

当然,我无法使用带有“getElementsByClassName()”的 js 函数来联系他们:

var element = document.getElementsByClassName('class')

我尝试了以前的每一节课。

我还尝试了与我的函数相关的 jQuery,我不确定它是否是选择元素的有效方法:

var element = document.$('#slider-range > span:nth-child(2)') /*minimum handler*/

最后,我想,不知怎么的,元素应该是一个id,这样它才能正常工作,我尝试在前面的类中添加一个id:

$('.class').attr("id","myId");

这仍然没有达到我的预期。

任何人都可以帮我解决这种情况吗?谢谢。

标签: javascriptjquery

解决方案


像这样的东西对你有用吗?

let minvalue = $(".ui-slider-handle:eq(0)").css("left");  
let maxvalue = $(".ui-slider-handle:eq(1)").css("left"); 

https://jsfiddle.net/sguk2a39/

编辑:有一些错别字。


推荐阅读