2013-04-26 86 views
0

嗨,大家好,你能幫我編輯這裏的代碼。我希望效果是可點擊的,而不是懸停效果。砌體柱移位調整

http://isotope.metafizzy.co/custom-layout-modes/masonry-column-shift.html

這是當前的代碼:

$container.find('.shifty-item').hover(
    function() { 
    $(this).css({ height: "+=100" }); 
    // note that element is passed in, not jQuery object 
    $container.isotope('shiftColumnOfItem', this); 
    }, 
    function() { 
    $(this).css({ height: "-=100" }); 
    $container.isotope('shiftColumnOfItem', this); 
    } 
); 

我試圖使用bind( '點擊',功能),但它不工作。還嘗試添加一個CSS類,但這並不能解決問題ethier。

回答

1

從代碼和documentation懸停有兩個函數/處理程序。

$(selector).hover(handlerIn, handlerOut)

爲了改變這種點擊,其中只有一個,你需要在懸停以「模擬」兩種狀態。

$container.find('.shifty-item').click(function({ 
    if($(this).hasClass('active')) 
    { 
     $(this).css({ height: "-=100" }); 
     $container.isotope('shiftColumnOfItem', this); 
     $(this).addClass('active'); 
    } 
    else 
    { 
     $(this).css({ height: "+=100" }); 
     $container.isotope('shiftColumnOfItem', this); 
     $(this).removeClass('active'); 
    } 

}); 

此代碼可以進一步優化,但你明白了。

+0

嗨試過你的代碼,我還添加了我以前的代碼,toggleClass。現在它可以工作。謝謝 – 2013-04-26 07:33:11

+0

我還有1個問題,我已將'css'更改爲'animate'。雖然它不能正常工作。我已經嘗試加入 '-webkit-transition:所有0.6s easy-in 0.2s' '-moz-transition:所有0.6s easy-in 0.2s' '-o-transition:0.6s所有-in 0.2s' '-ms-transition:0.6s ease-in 0.2s' 'transition:0.6s ease-in 0.2s' 但是仍然沒有運氣 – 2013-04-26 07:38:10

+0

我不是什麼問題可能。如果你在老問題中找不到任何東西,請嘗試打開新的q – 2013-04-26 08:07:45