onquide工具,范围onSlide

时间:2012-08-22 23:15:59

标签: jquery jquery-tools

我似乎无法弄清楚如何使用onSlide事件,jquerytools的论坛似乎无法正常工作

基本上,我想在幻灯片上获取当前范围值,而不是更改。

这是我为onchange工作的内容,但我希望在滑动范围选择器时获取当前值。

http://jsfiddle.net/rx3AJ/

JS我一直在尝试:

$(function () {

      $("#slideshow img").each(function(index, element){$(element).attr("id", index+1);});    

      var count = $("#slideshow img").length;

      $('#slideshow img:gt(0)').hide();
      $("#date p").text($("#slideshow img#1").attr("alt"));

      $(":range").rangeinput({
            precision: 0, value: 1, min: 1, max: count,
            onSlide: function() {
                console.log("you\'re sliding");
                //this is where i want to update do stuff on slide I think? but it won't work
                return true;
              }   
        });

      $(':range').bind('onSlide', function(){})
      $(":range").change(function(event, value) {
          //i'd like to do this onslide
          console.info("value changed to", value);
          $('#slideshow img').hide();
          $('#slideshow img#' + value).show();
          $("#date p").text($("#slideshow img#" + value).attr("alt"));
      });

  });​

非常感谢任何想法,因为我没有任何线索......

1 个答案:

答案 0 :(得分:0)

首先,不要使用jsfiddle,因为它不包含jQuery工具库。其次,将范围输入代码更改为:

$(":range").rangeinput({
    precision: 0, value: 1, min: 1, max: count,
    onSlide: function(event, i) {
        $('#slideshow img').hide();
        $('#slideshow img').eq(i).show(); 
        // the way you had works too, but you don't have to assign id's this way
        $("#date p").text($("#slideshow img").eq(i).attr("alt"));

    }   
});

并确保包含jQuery工具(包括jQuery)