2012-08-22 52 views
0

我似乎無法弄清楚如何使用onSlide事件,並在jquerytools論壇似乎不工作jQuery的工具,範圍onSlide

基本上,我想獲得的電流範圍值在幻燈片上,而不是onchange。

這是我爲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")); 
     }); 

    });​ 

任何想法是極大的讚賞,因爲我不知道......

回答

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的)