2013-10-13 33 views
1

因此,我試圖讓評級系統,你鼠標懸停說第四顆星,它突出顯示所有那些。我已經瀏覽了這裏的許多帖子,並且有很多替代品很坦率地可能會更容易,但我喜歡自己做事,這只是爲了好玩。基本上這只是讓我煩惱,我無法得到這個工作。自定義簡單亞馬遜類型的星級評價使用jquery:lt

$(document).ready(function() { 
$(".star") 
.hover(

    function(){ 

    var n = $('#stars>.starHolder>.star').index(this); 
    alert(n); 
     $('.star:lt(n)').css('left', '-27px'); 
    }, 
    function(){ 
     $('.star:lt(n)').css('left', '0px'); 
     } 
    );    
}); 

這是我擁有的,如果不是的:LT(N)我把:LT(5)或任何號碼,它的工作原理完全如預期;我有jQuery將它向左和向後滑動10個圖像的每一個。我唯一的問題是它的變量部分不起作用。在那裏,我有警報設置爲顯示n,它顯示了一個數字,就像我期望的一樣,但是它沒有傳遞給該函數。我在Firebug中沒有遇到任何錯誤。 很明顯,Javascript不是我的專長,所以要溫柔請:) 謝謝!

+0

因爲它是一個字符串,我不相信的JavaScript知道插值的變量。嘗試類似$('。start:lt('+ n +')')。css ... – BrianHall

+0

Aand我是個白癡...... $('。star:lt('+ n +')') .css('left','0px'); This – danny2327

+0

這是可以讓人瘋狂的小事情:) – BrianHall

回答

1

n的LT(n)是不變量嘗試使用

$('.star:lt('+n+')') 
+0

T是正確的先生。我盯着這裏一個小時,嘗試了不同的事情,但是當我發佈時,我又看了一眼,就像是「哦,那不是字面意思......」THanks – danny2327