본문 바로가기

javascript/sample

비오는 효과 제이쿼리

비오는 효과 제이쿼리


HTML


<ul class="item_list">
<li><img src="image/item.png" alt="아이템"></li>
<li><img src="image/item.png" alt="아이템"></li>
<li><img src="image/item.png" alt="아이템"></li>
<li><img src="image/item.png" alt="아이템"></li>
<li><img src="image/item.png" alt="아이템"></li>
<li><img src="image/item.png" alt="아이템"></li>
<li><img src="image/item.png" alt="아이템"></li>
<li><img src="image/item.png" alt="아이템"></li>
<li><img src="image/item.png" alt="아이템"></li>
<li><img src="image/item.png" alt="아이템"></li>
<li><img src="image/item.png" alt="아이템"></li>
</ul>



CSS


body{ margin:0; padding:0;}
#wrap{ position: relative; background:#151515; width:100%; height:100vh; overflow: hidden;}
.item_list{ position: relative; top:0; left:0;}
.item_list li{ position: absolute; top:0; left:0; opacity: 0;}



SCRIPT


function create()
{
_w = $( window );
_itemList = $( ".item_list" );
_itemTarget = _itemList.children( "li" );
_wH = _w.height();
console.log( "create" );
}

function addEvent()
{
}

function loadItem()
{
var index = $( this ).index();
_itemTarget.css({
top: - _itemTarget.eq( index ).height()
})
}
function moveItem()
{
_itemTarget.each( function(){
posX = Math.random() * ( _w.width() - $( this ).width() );
TweenMax.set( $( this ), { opacity:0, left: posX });
TweenMax.to( $( this ), 1, { opacity:1, top : _wH, ease:Power0.easeInOut, delay:Math.random() * 3, onCompleteParams : [ $( this ) ], onComplete: reMoveItem});
});
}

function reMoveItem( $item )
{
var item = $item;

posX = Math.random() * ( _w.width() -item.width() );
TweenMax.set( item, { opacity: 0, left: posX, top: -item.height() });
TweenMax.to( item, 1, { opacity:1, top: _wH, ease:Power0.easeInOut, delay:Math.random() * 2, onCompleteParams : [ item ], onComplete:reMoveItem });
}



예제 샘플 : http://ux.adqua.co.kr/ux/ixkfo86/test/rain/random.html

'javascript > sample' 카테고리의 다른 글

제이쿼리 메뉴  (0) 2018.11.13
오늘 하루 안보기 팝업  (0) 2018.11.13
제이쿼리 이미지 슬라이드  (0) 2018.11.07
섹션 스크롤 체크  (0) 2018.10.05
swiper 탭 슬라이드  (2) 2018.06.28