Jquery ui函数级别范围

时间:2014-09-24 20:10:04

标签: javascript jquery jquery-ui

我跟随这个例子: http://jqueryui.com/slider/#slider-vertical

我已将此示例中的确切代码(将div /输入名称更改为我自己的代码)复制到另一个网页,但Chrome会抛出Uncaught TypeError: undefined is not a function并且滑块永远不会出现。

不起作用的确切代码:

$(function() {
    $( "#timeframe_slider" ).slider({
      orientation: "vertical",
      range: "min",
      min: 0,
      max: 100,
      value: 60,
      slide: function( event, ui ) {
        $( "#month_week" ).val( ui.value );
      }
    });
    $( "#month_week" ).val( $( "#timeframe_slider" ).slider( "value" ) );
  });

当我将代码更改为简单的代码时:

$( "#timeframe_slider" ).slider({
    orientation: "horizontal",
    range: "min",
    min: 0,
    max: 1,
    value: 0,
    slide: function( event, ui ) {
      if (ui.value === 0) {
        $( "#month_week" ).val("Month");
      } else {
      $( "#month_week" ).val("Week");
    }}
 });

它完美无缺。

我对javascript很新,但我明白有:

$(function() {
    code goes here
};

是为了确保页面准备就绪。有人可以解释为什么在尝试使用该示例时,.slider()函数突然不起作用吗?

更新 尝试在jsfiddle中重新创建它时,不会出现此问题。但这正是我所看到的: enter image description here

1 个答案:

答案 0 :(得分:0)

要检查的一件事是,您不会意外地将jquery包括两次,导致滑块插件在$(function() {包装的代码触发时不再附加到$。

对不起,这是一个评论,然后是答案,但我还没有足够的声誉发表评论。