2

我将 jQuery 滑块 UI 用于音频播放器中的滑块,只有当我为其设置变量时,滑动功能不起作用。

$('.body_container .slider').slider({

  value: 0,
  step: 0.01,
  orientation: "horizontal",
  range: "min",
  max: song.duration,
  animate: true,  

  slide: function(event,ui) {             
    manualSeek = true;
  },
  stop:function(event,ui) {
    manualSeek = false;         
    song.currentTime = ui.value;
  }
});

在萤火虫中,它出现了错误closestHandle is undefinedclosestHandle来自 jQuery UI 文件。

但是,当我在函数中没有设置任何选项而只是离开事件但显然我需要设置选项时,它确实有效;

$('.body_container .slider').slider({

  slide: function(event,ui) {             
    manualSeek = true;
  },
  stop:function(event,ui) {
    manualSeek = false;         
    song.currentTime = ui.value;
  }
});
4

2 回答 2

9

有点晚了,但请确保 song.duration 是一个数字。您可以使用 parseFloat() 来确定。

于 2013-04-30T09:16:40.647 回答
1

我认为 song.duration 没有定义。

尝试删除以下行:

max: song.duration,

或者用这个替换它:

max: 100,

如果是 song.duration 不起作用,请尝试使用console.log(song.duration);with firebug 来调试该变量中的内容。

于 2012-11-04T06:06:14.177 回答