2011-06-02 98 views
1

網站的http://cocktail.juggernautwebsites.com/,我在頁腳工作。我試圖在單擊「聯繫人」氣泡時滾動頁腳中的#pane div。滾動來回滾動到

我設法讓我想正確滾動到左側,但我無法讓它滾動回右側(又名原始位置)。如果我在Chrome控制檯輸入

$('#pane').scrollTo(0 , 600,{axis:'x'}); 

,我可以讓它滑動......這是我的代碼:

$(document).ready(function(){ 
$('.contact-scroll').click(function(){ 
    $('#pane').scrollTo(720 , 600 ); 
    $('.contact-scroll').addClass('scrolled'); 
    $('.contact-scroll').removeClass('contact-scroll');  
    return false;  
}); 

$('.scrolled').click(function(){ 
    $('#pane').scrollTo(0 , 600,{axis:'x'}); 
    $('.scrolled').addClass('contact-scroll'); 
    $('.scrolled').removeClass('scrolled');  
    return false;    
}); 

});

我沒有原來有複雜addClass與removeClass,這就是我最初從事與它沒有工作,要麼:

$(document).ready(function(){ 
$('.contact-scroll').click(function(){ 
    $('#pane').scrollTo(720 , 600 ); 
    $('.contact-scroll').addClass('scrolled'); 
    return false;  
}); 

$('.scrolled').click(function(){ 
    $('#pane').scrollTo(0 , 600 ); 
}); 
}); 

回答

3

問題是click事件沒有被正確射擊。

$('.contact-scroll').live('click', function(){ 

$('.scrolled').live('click', function(){ 

應該解決的問題。

然而,你可能要考慮有一個click事件,並檢查滾動狀態:

$('#pane').click(function() { 
    if ($(this).hasClass('scrolled')) { 
     $(this).scrollTo(0 , 600,{axis:'x'}); 
    } else { 
     $(this).scrollTo(720 , 600,{axis:'x'}); 
    } 
    $(this).toggleClass('scrolled'); 
}); 
+0

+1我是正確的寫類似的東西! – 2011-06-02 22:42:10