在jQuery UI滑块上的create event中不可用的值?

问题描述 投票:5回答:3
$('#foo').slider({
  range: 'min',
  min: 0,
  max: 1000,
  step: 100,
  value: 500,
  create: function( event, ui) {
          var bar = ui.value;
  },
  //etc...
});

为什么bar未定义而不是500?是否可以在value事件中为create指定一个变量?

jquery jquery-ui jquery-ui-slider
3个回答
9
投票

你也可以使用

create: function( e, ui ) {
    var bar=$(this).slider('value');
}

DEMO.


1
投票

我不确定为什么在实例化滑块时需要获取值,因为无论如何都要设置它,但是你可以这样做:

$('#foo').slider({
  range: 'min',
  min: 0,
  max: 1000,
  step: 100,
  value: 500,
  create: function( event, ui) {
          var bar = $('#foo').slider("value");
  },
  //etc...
});​

jsFiddle example


0
投票

根据API文档,create方法的ui参数为空,因此var bar = ui.value是未定义的,以防有人想知道它为什么不起作用。

请参阅reference

© www.soinside.com 2019 - 2024. All rights reserved.