jQuery Mobile滑块事件

时间:2012-07-28 05:33:41

标签: javascript jquery-mobile slider

使用以下方式开发移动网络应用

  • jquery 1.7.1
  • jquery-mobile 1.1.1
  • Rails 3.2.1

在这里,我打算更改时间指示器的内容(<span id="wake_up_time_display">),因为滑块的值会发生变化。

当直接调用目标URL时,以下工作。

但是在jQuery mobile显示<div data-role="page">的许多场合,指标保持不变。 (滑块本身的值会发生变化。)

<label class="select" for="daily_record_wakeup_time">
    I'll wake up at: 
</label>
<span id="wake_up_time_display"> 6:00</span>
<input data-theme="e" data-track-theme="d" id="daily_record_wakeup_time" 
       max="480" min="240" name="daily_record[wakeup_time]" step="15" 
       type="range" value="360" />

<script>
    $("input[id='daily_record_wakeup_time']").live ("slidercreate", function () {
        $("input[id='daily_record_wakeup_time']").bind ("change", function (event) {
            $("#wake_up_time_display").text(Math.floor($(this).val() / 60) +
                    ":"+($(this).val() % 60 < 10 ? "0":"")+$(this).val() % 60);
        });
    });
</script>

1 个答案:

答案 0 :(得分:0)

为什么不直接使用CSS选择器

$("#daily_record_wakeup_time")

而不是将ID作为属性传递? 此外,如果您可以避免使用“实时”方法,而使用“委托”将是伟大的。 jQuery已经弃用了这个方法,新版本不再支持它。确保库中的某个位置有自定义事件“slidercreate”。