滑块当前呈现正常,它只是没有按照我所说的去做。
我无法使用$('#slider').val(50).slider('refresh')
,而且
当我这样做时告诉我:
Uncaught在初始化之前无法调用滑块上的方法; 试图调用方法'刷新'
这似乎有道理,因为我从未将其初始化为滑块。这是我的代码:
在某个地方我创建了一个div "<div id='scrubber'></div>"
并将其写入屏幕$(cssSelector.html(html);
然后,一旦代码的其他部分准备就绪,我就创建了滑块:
$('#scrubber').html('<input type="range" name="prog" id="prog" value="0" min="0" max="'+event.jPlayer.status.duration+'" />').trigger("create");
然后:
$('#scrubber').val(event.jPlayer.status.currentTime).slider('refresh');
这给了我那个错误。
我尝试过使用$('#scrubber').slider();
,但这似乎创建了第二个滑块。所以我试着更换第一个滑块,但它只会让事情变得更糟。在任何情况下,如果我然后尝试更改值,我不再得到错误,但它仍然不会改变滑块的位置。
有什么想法吗?
答案 0 :(得分:4)
我暂时没有使用过jQM,但是它还有.page()函数吗? 如果是这样,请在滑块包装器上调用page():
('#scrubber').parent().page();
$('#scrubber').val(event.jPlayer.status.currentTime).slider('refresh');
这将重新渲染滑块,使其正确初始化。