我使用这些调用在控制台中以两种不同的方式打印对象:
console.log(ui.handle)
console.log($(ui.handle))
console.log(ui)打印出来:
console.log($(ui.handle))打印出来像这样:
我需要从其中一个中获得一个共同的“事物”价值。在第一个我需要数据值。因此,我需要一种从中获取12:00的方法。
从第二点开始,我需要获得的这个“东西”/值超过1个点。 1.在属性下 - >数据值 - >它是nodeValue,textContent和value 2.在数据集下 - >价值是12:00 AM
我在打印完对象后尝试执行以下操作,但没有得到正确的值:
console.log(ui.handle.attributes.getNamedItem("data-value"))
console.log($(ui.handle).data('value'))
console.log(ui.handle.dataset["value"])
有人请理解我想要得到的东西并帮助我。
这是我的JS代码初始化滑块:
$(".pct-slider#" + sliders[1])
.customSlider({
min: 0,
max: 1440,
step: 15,
range: false,
ticks: true,
values: initialValues,
create: function (event, ui) {
$.each( initialValues, function(i, v){
updateValue({
value: v,
handle: $(".pct-slider#" + sliders[1]).find('.ui-slider-handle').eq(i)
});
});
},
start: function(event, ui) {
//console.log(event)
console.log(ui.handle)
console.log($(ui.handle))
console.log($(ui.handle).data('value'))
console.log(ui.handle.dataset["value"])
console.log(" ")
console.log(" ")
var curHandles = $(".pct-slider#tuesdaySlider").find('.ui-slider-handle')
var dataValue
$.each(curHandles, function(i, v){
dataValue = $(".pct-slider#" + sliders[1]).find('.ui-slider-handle').eq(i).attr('data-value')
console.log(ui.handle.dataset.value + " " + dataValue)
if (ui.handle.dataset.value == dataValue) {
var last = $($(".pct-slider#" + sliders[1]).customSlider('values')).last()[0]
$(".pct-slider#" + sliders[1]).customSlider('addValue', last + 15)
return false
}
})
console.log("HELLO " + $(ui.handle).data('value'))
},
slide: function (event, ui) {
resize_colors(sliders[1]);
var handleIndex = $('a', event.target).index(ui.handle),
curr = ui.values[handleIndex],
next = ui.values[handleIndex + 1] - 15,
prev = ui.values[handleIndex - 1] + 15;
if (curr > next || curr < prev) {
return false;
}
updateValue(ui);
//positionSelects();
},
stop: function(event, ui){
resize_colors(sliders[1]);
}
});
****注意****停止功能中的调用console.log(ui.handle.dataset [“value”])会给我12:00 AM,但我需要提取此值start函数根据值阻止滑动。
答案 0 :(得分:1)
尝试
$(ui.handle)[0].dataset.value
答案 1 :(得分:0)
获取ui.handle属性
console.log(ui.handle.attr('data-value'));
答案 2 :(得分:0)
尝试调用$(ui.handle).attr('data-value')
时获取错误值的主要原因是您尝试读取滑块的start
事件中的值,按定义{{1} }
参考:http://api.jqueryui.com/slider/
您可以做的是,您可以尝试读取滑块的Triggered when the user starts sliding.
事件中的值。
JS CODE:
stop
快乐编码:)