Javascript jQuery滑块调用另一个函数
我是一个有点jQuery滑块的新手,所以请容忍我 我想调用我的Javascript jQuery滑块调用另一个函数,javascript,jquery,Javascript,Jquery,我是一个有点jQuery滑块的新手,所以请容忍我 我想调用我的updateData(input)函数,根据滑块值的不同,使用不同的输入,但发现当我使用if语句时,它只允许一个条件: <div id="slider"></div> <script> $('#slider').slider({ orientation: 'horizontal', step: 5, value: 0, animate: true, slid
updateData(input)
函数,根据滑块值的不同,使用不同的输入,但发现当我使用if语句时,它只允许一个条件:
<div id="slider"></div>
<script>
$('#slider').slider({
orientation: 'horizontal',
step: 5,
value: 0,
animate: true,
slide: function(event, ui) {
if(ui.value > 50){
updateData("data/commodities3.json")
}
else if(ui.value > 75){
updateData("data/commodities2.json")
}
}
});
</script>
$(“#滑块”)。滑块({
方向:“水平”,
步骤:5,
值:0,
动画:对,
幻灯片:功能(事件、用户界面){
如果(ui.value>50){
updateData(“数据/商品3.json”)
}
否则如果(ui.value>75){
updateData(“数据/商品2.json”)
}
}
});
任何关于如何实现这一点的建议都将不胜感激。谢谢。您的问题在于如何定义您的条件。显然,如果您首先捕获所有高于50的对象,那么它就不会遇到检查else条件的麻烦 首先检查最大的数字可以解决此问题:
if (ui.value > 75) {
updateData("data/commodities2.json")
} else if (ui.value > 50) {
updateData("data/commodities3.json")
}
如果我理解正确,我认为您需要重新格式化If语句 正如您目前所拥有的,else-if语句将永远不会执行,因为任何大于75的值也都大于50 我想你想要这样的东西:
if (ui.value > 75) { DO SOMETHING }
else if (ui.value > 50) { DO SOMETHING ELSE }
@mtaube,@joelrobichaud,谢谢你的帮助,我用你的答案组合了出来
<slidertitle>Pages</slidertitle>
<div id="slider"></div>
<script>
$('#slider').slider({
orientation: 'horizontal',
step: 5,
value: 0,
animate: false,
change: function(event, ui) {
if (ui.value > 75) {
updateData("data/commodities3.json")
}
else if(ui.value > 50){
updateData("data/commodities2.json")
}
}
});
</script>
页面
$(“#滑块”)。滑块({
方向:“水平”,
步骤:5,
值:0,
动画:假,
更改:功能(事件、用户界面){
如果(ui.value>75){
updateData(“数据/商品3.json”)
}
否则如果(ui.value>50){
updateData(“数据/商品2.json”)
}
}
});
您好,谢谢您的回复。我刚试过,但滑块在满足第一个条件后仍然不会移动。您的问题是滑块不移动或函数updateData不执行?updateData执行,但之后滑块不会移动。您可以使用updateData函数中的代码编辑您的问题吗?也许它会以某种方式影响滑块的行为。这可能会起作用,但我可能会有大约10种不同的输入。所以在10、20等以上。如果您有更多的值要检查,请使用级联语句(参见上面的编辑)。只需确保从较高的值开始,然后级联到较低的值。谢谢您的帮助。我试过了,但在达到它满足的第一个条件后,它仍然无法移动。@TomWhitaker我想你应该调用slider.slider(“value”,value);方法在updateData函数中?Hi@mtaube,updateData()函数是用D3编写的,这可能会使调用滑块产生问题。当我问这个问题时,我想知道是否有某种参数在调用函数后必须重置,以允许滑块再次移动。。