我正在用jQuery添加一個類,當用戶點擊一個縮略圖給予margin-top屬性的動畫效果,但它似乎沒有工作,我不知道爲什麼這樣我想知道有人可以向我解釋。下面的代碼:CSS轉換不起作用
CSS:
.content {
position: relative;
width: 60%;
height: auto;
transition: all 200ms ease-in-out; }
.content img {
margin-top: -150px;
width: 100%;
height: auto;
transition: all 900ms ease-in-out; }
.content img.img-is-showing {
margin-top: 0; }
JS:
$(document).ready(function(){
$('.lightbox-trigger').on('click', function(){
var image_href = $(this).attr('href');
$('.lightbox').addClass('is-showing');
$('.content img').addClass('img-is-showing');
$('.lightbox-image').attr('src', image_href);
$('.lightbox').show();
$('.lightbox').on('click', function(){
$(this).removeClass('is-showing');
});
});
});
我已經使用上了「.lightbox」類的不透明度屬性做了同樣類型的動畫,它的工作很好,但我我不確定爲什麼邊緣頂部動畫不起作用。
用於該網站的URL是Here
謝謝科爾!完美地工作,我已經知道問題出在哪裏,並且你提出了未來的改進,對我的問題提出了完美的答案,我非常感謝!我想實現你所建議的調整,但我真的對jquery/JS不熟悉,所以不明白你的意思是「綁定重複的.lightbox點擊事件」和「考慮緩存更常用的選擇器」 - 你能解釋一下嗎?這些對我來說更進一步。再次感謝! – ironmike
@ironmike當然 - 對於緩存,我只是將輸出保存在一個範圍內的變量(即在$(document).ready'回調中),所以你不必不必要地搜索DOM,你可以參考到那個變量。請參閱[這裏](http://stackoverflow.com/a/24053931/2267428)以獲取快速解釋和一些陷阱。對於不綁定重複事件,請參閱['.one()'](http://api.jquery.com/one/),它旨在解決這類問題。用'.on()'堆棧綁定的事件。 :) –