2013-01-24 61 views
2

我的播放器頁面上有一個360度旋轉輪,最終充當音量按鈕。限制一個360 jQuery輪到300

我需要將其功能限制在270度而不是360度(從7點到5點),因此它可以具有最小到最大的效果。

如何使用附加的代碼實現此目的?

The Player Page

  $('#metal .indicator-cw').bind('touchmove', function(event){ 
     updateMetal(); 
    }); 
    $("#metal .indicator-cw").mousemove(updateMetal); 

    function updateMetal(){ 
var number = $("#metal .result-cw").text(); 
var Degrees = parseInt(number); 
var vol = ((Degrees + 150) % 360) * (1/270);  
$musicPlayer.jPlayer("volume", vol); 

$("#rotateit").css({'transform':'rotate(' + (Degrees) + 'deg)', '-webkit-transform':'rotate(' + (Degrees) + 'deg)', '-o-transform':'rotate(' + (Degrees) + 'deg)', '-moz-transform':'rotate(' + (Degrees) + 'deg)', '-ms-transform':'rotate(' + (Degrees) + 'deg)' }); 
    if (Degrees > 120 || Degrees < 210) return; 
    } 
    //js code for the metal style wheel - above 
+0

可你乾脆來個測試一個你有Degrees值,如果它超出你想要的範圍,則跳過該函數的其餘部分,而不是ro評估車輪? – Offbeatmammal

+0

7'至5'爲270度。我的答案反映了7點到5點。如果您想將其設置爲真300範圍,可以將其更改爲135和205。 –

回答

2

加入這個停止更新卷輪

if (Degrees > 150 && Degrees < 210) return; 

您還需要計算體積有點不同

//This shifts the degrees from 210-120 to be 0-270 and then scales it to 0-1 
var vol = ((Degrees + 150) % 360) * (1/300); 
+0

雖然音量確實是270,但是輪子仍在旋轉,我更新了上面的代碼 – TonalDev

+0

將if語句放在'var vol'行 –

+0

之前仍然旋轉:(function updateMetal(){ if(Degrees> 120 || Degrees <210)return; \t var number = $(「#metal .result-cw」)。text(); – TonalDev