2014-01-25 18 views
-1

我希望用戶使用下拉菜單選擇動畫時間,現在我嘗試了幾個小時,但它沒有正常工作。我對jQuery很陌生,所以也許有人可以幫我解決我的問題,並向我描述錯誤。在此先感謝使用變量作爲.animate的速度指示器

當我的代碼是這樣的,值被張貼到變量的權利,但我想,不知何故一個.on('變化')丟失,但我現在不真的在哪裏。

這是我的jQuery設置:

$(function() { 
    $('#engage').bind('click',function(event){ 
     var speed = $('#sol').val();    
     var $anchor = $(this); 
     $('html, body').stop().animate({ 
      scrollLeft: $($anchor.attr('href')).offset().left 
     }, speed); 
     event.preventDefault(); 
     alert(speed); 
    }); 
}); 

這是我的HTML設置:

<form id="speed"> 
    <label for="sol">Speed</label> 
    <select name="sol" id="sol" style="display:none;"> 
     <option value="1000">1000</option> 
     <option value="2000">2000</option> 
     <option value="4000">4000</option> 
     <option value="8000">8000</option> 
     <option value="16000">16000</option> 
     <option value="25000">25000</option> 
     <option value="50000">50000</option> 
     <option value="100000">100000</option> 
    </select> 
</form> 
+0

請發佈一個鏈接到jsfiddle。 –

+0

什麼不行? –

+0

隨着你的代碼,下拉甚至沒有顯示。這裏是一個jfiddle它顯示:http://jsfiddle.net/jrm2k6/XS2dH/ –

回答

1

你缺少.val(),使其執行.. (*和$在開始*)

使用

var speed = $('#sol').val(); 
1

退房此行

var speed = ('#sol').val(); 

你忘了使用$簽署其他似乎是罰款。