북

다이나믹한 화면움직임

· 2013-09-13 (금) 01:14:10 · 3609 · 2
 
이런화면.. css로 꾸미는거맞나요?
 
아니면 다이나믹 코드로 입힌건가요?
 
저런 소스좀 구하고싶어요. 좀 알려주세요
|

댓글 2개

2013-09-13 (금) 10:29:05
jQuery 로 구동되는것이구요.

코드는 대충 저 사이트에서 js 파일만 뽑아보니 다음과 같습니다.


(function($) {

var NivoSlider = function(element, options){
//Defaults are below
var settings = $.extend({}, $.fn.nivoSlider.defaults, options);

//Useful variables. Play carefully.
var vars = {
currentSlide: 0,
currentImage: '',
totalSlides: 0,
running: false,
paused: false,
stop: false
};

//Get this slider
var slider = $(element);
slider.data('nivo:vars', vars);
slider.css('position','relative');
slider.addClass('nivoSlider');

//Find our slider children
var kids = slider.children();
kids.each(function() {
var child = $(this);
var link = '';
if(!child.is('img')){
if(child.is('a')){
child.addClass('nivo-imageLink');
link = child;
}
child = child.find('img:first');
}
//Get img width & height
var childWidth = child.width();
if(childWidth == 0) childWidth = child.attr('width');
var childHeight = child.height();
if(childHeight == 0) childHeight = child.attr('height');
//Resize the slider
if(childWidth > slider.width()){
slider.width(childWidth);
}
if(childHeight > slider.height()){
slider.height(childHeight);
}
if(link != ''){
link.css('display','none');
}
child.css('display','none');
vars.totalSlides++;
});

//If randomStart
if(settings.randomStart){
settings.startSlide = Math.floor(Math.random() * vars.totalSlides);
}

//Set startSlide
if(settings.startSlide > 0){
if(settings.startSlide >= vars.totalSlides) settings.startSlide = vars.totalSlides - 1;
vars.currentSlide = settings.startSlide;
}

//Get initial image
if($(kids[vars.currentSlide]).is('img')){
vars.currentImage = $(kids[vars.currentSlide]);
} else {
vars.currentImage = $(kids[vars.currentSlide]).find('img:first');
}

//Show initial link
if($(kids[vars.currentSlide]).is('a')){
$(kids[vars.currentSlide]).css('display','block');
}

//Set first background
slider.css('background','url("'+ vars.currentImage.attr('src') +'") no-repeat');

//Create caption
slider.append(
$('<div class="nivo-caption"><p></p></div>').css({ display:'none', opacity:settings.captionOpacity })
);

// Cross browser default caption opacity
$('.nivo-caption', slider).css('opacity', 0);

// Process caption function
var processCaption = function(settings){
var nivoCaption = $('.nivo-caption', slider);
if(vars.currentImage.attr('title') != '' && vars.currentImage.attr('title') != undefined){
var title = vars.currentImage.attr('title');
if(title.substr(0,1) == '#') title = $(title).html();

if(nivoCaption.css('opacity') != 0){
nivoCaption.find('p').stop().fadeTo(settings.animSpeed, 0, function(){
$(this).html(title);
$(this).stop().fadeTo(settings.animSpeed, 1);
});
} else {
nivoCaption.find('p').html(title);
}
nivoCaption.stop().fadeTo(settings.animSpeed, settings.captionOpacity);
} else {
nivoCaption.stop().fadeTo(settings.animSpeed, 0);
}
}

//Process initial caption
processCaption(settings);

//In the words of Super Mario "let's a go!"
var timer = 0;
if(!settings.manualAdvance && kids.length > 1){
timer = setInterval(function(){ nivoRun(slider, kids, settings, false); }, settings.pauseTime);
}

//Add Direction nav
if(settings.directionNav){
slider.append('<div class="nivo-directionNav"><a class="nivo-prevNav" title="Prev"></a><a class="nivo-nextNav" title="Next"></a></div>');

//Hide Direction nav
if(settings.directionNavHide){
$('.nivo-directionNav', slider).hide();
slider.hover(function(){
$('.nivo-directionNav', slider).show();
}, function(){
$('.nivo-directionNav', slider).hide();
});
}

$('a.nivo-prevNav', slider).live('click', function(){
if(vars.running) return false;
clearInterval(timer);
jquery 부분을 제외하면 대부분 css에서 컨트롤 하지만 모던브라우저가 아니면 표현하지 못합니다.
css media 부분이 가로폭에 따라 대응하는 스타일이죠~

저도 자주 쓰긴 합니다만, ie7, 8같이 표현 못하는 경우는 걍 min-width로 고정시켜버리면 문제는 끝...이라...-0-;
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
13-10-29 조회 7,714
13-10-28 조회 8,607
13-10-28 조회 3,765
13-10-28 조회 3,372
13-10-27 조회 2,992
13-10-26 조회 3,666
13-10-25 조회 3,446
13-10-24 조회 3,419
13-10-24 조회 3,155
13-10-24 조회 3,473
13-10-24 조회 4,059
13-10-23 조회 4,211
13-10-23 조회 3,370
13-10-22 조회 4,521
13-10-21 조회 3,191
13-10-20 조회 3,516
13-10-18 조회 4,416
13-10-17 조회 4,571
13-10-15 조회 4,663
13-10-11 조회 4,544
13-10-10 조회 5,140
13-10-10 조회 3,618
13-10-08 조회 4,142
13-10-03 조회 6,213
13-10-02 조회 4,083
13-10-02 조회 4,258
13-10-02 조회 4,119
13-10-02 조회 3,603
13-10-02 조회 3,872
13-10-02 조회 3,735
13-10-02 조회 3,994
13-09-29 조회 4,653
13-09-29 조회 4,092
13-09-29 조회 3,964
13-09-29 조회 6,549
13-09-29 조회 4,179
13-09-27 조회 3,519
13-09-27 조회 4,151
13-09-24 조회 3,214
13-09-24 조회 3,498
13-09-18 조회 3,908
13-09-17 조회 3,757
13-09-16 조회 7,900
13-09-16 조회 5,270
13-09-16 조회 4,300
13-09-15 조회 3,143
13-09-13 조회 4,742
13-09-13 조회 3,321
13-09-13 조회 3,610
13-09-12 조회 3,422
13-09-11 조회 6,032
13-09-10 조회 3,460
13-09-10 조회 6,090
13-09-10 조회 3,856
13-09-09 조회 4,227
13-09-09 조회 4,868
13-09-07 조회 4,996
13-09-07 조회 3,087
13-09-06 조회 3,209
13-09-06 조회 3,821
13-09-06 조회 3,177
13-09-05 조회 3,344
13-09-05 조회 9,347
13-09-04 조회 3,046
13-09-04 조회 3,308
13-09-04 조회 2,987
13-09-03 조회 3,082
13-09-03 조회 3,420
13-08-30 조회 3,337
13-08-30 조회 4,410
13-08-29 조회 4,377
13-08-28 조회 3,887
13-08-28 조회 8,063
13-08-27 조회 4,047
13-08-26 조회 4,251
13-08-26 조회 3,476
13-08-26 조회 4,757
13-08-23 조회 4,036
13-08-23 조회 5,626
13-08-22 조회 5,175
13-08-22 조회 4,508
13-08-22 조회 4,973
13-08-22 조회 4,589
13-08-22 조회 4,495
13-08-22 조회 3,518
13-08-20 조회 3,757
13-08-18 조회 8,400
13-08-18 조회 5,279
13-08-17 조회 5,888
13-08-17 조회 4,602
13-08-17 조회 4,132
13-08-14 조회 3,300
13-08-12 조회 4,319
13-08-11 조회 3,495
13-08-09 조회 4,009
13-08-08 조회 5,232
13-08-08 조회 4,956
13-08-08 조회 4,339
13-08-08 조회 9,257
13-08-08 조회 5,338