다이나믹한 화면움직임

· 2013-09-13 (금) 01:14:10 · 3593 · 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건
+
제목 글쓴이 날짜 조회
14-08-26 조회 3,361
14-08-26 조회 3,507
14-08-26 조회 4,076
14-08-26 조회 3,421
14-08-26 조회 3,681
14-08-26 조회 3,619
14-08-26 조회 3,384
14-08-26 조회 3,401
14-08-26 조회 3,446
14-08-26 조회 3,463
14-08-25 조회 3,990
14-08-16 조회 4,129
14-08-12 조회 4,023
14-08-05 조회 3,778
14-08-04 조회 4,536
14-08-04 조회 3,897
14-08-01 조회 4,924
14-07-29 조회 4,085
14-07-10 조회 3,945
14-07-08 조회 4,608
14-07-08 조회 4,188
14-07-05 조회 3,782
14-05-26 조회 5,310
14-05-26 조회 3,991
14-05-21 조회 4,463
14-05-19 조회 7,407
14-05-17 조회 6,614
14-04-30 조회 7,049
14-04-27 조회 4,449
14-04-26 조회 4,653
14-04-13 조회 4,795
14-04-13 조회 4,032
14-03-25 조회 6,392
14-03-25 조회 4,008
14-03-12 조회 3,813
14-03-12 조회 5,228
14-02-24 조회 4,525
13-12-27 조회 3,860
13-11-18 조회 4,196
13-11-18 조회 6,508
13-10-17 조회 4,517
13-10-03 조회 6,197
13-10-02 조회 4,053
13-09-29 조회 4,535
13-09-29 조회 3,926
13-09-17 조회 3,737
13-09-11 조회 5,919
13-09-09 조회 4,214
13-09-05 조회 9,248
13-08-23 조회 5,576
13-08-22 조회 5,093
13-08-22 조회 4,491
13-08-22 조회 4,951
13-08-17 조회 5,759
13-08-17 조회 4,056
13-07-11 조회 5,391
13-07-11 조회 4,338
13-07-08 조회 3,895
13-07-04 조회 4,145
13-07-04 조회 4,024
13-07-04 조회 3,900
13-07-03 조회 5,807
13-07-01 조회 3,664
13-07-01 조회 3,531
13-07-01 조회 4,435
13-06-21 조회 6,200
13-06-14 조회 4,774
13-06-11 조회 3,596
13-06-06 조회 5,255
13-06-05 조회 4,015
13-05-11 조회 4,761
13-05-10 조회 4,293
13-05-10 조회 4,611
13-05-10 조회 3,954
13-05-08 조회 4,297
13-05-08 조회 3,551
13-05-08 조회 3,938
13-05-08 조회 5,187
13-04-05 조회 5,973
13-03-31 조회 5,533
13-03-24 조회 3,908
13-03-24 조회 5,966
13-03-23 조회 3,563
13-03-21 조회 3,609
13-03-20 조회 3,721
13-03-20 조회 4,162
13-03-20 조회 3,667
13-03-20 조회 3,773
13-03-20 조회 6,016
13-03-20 조회 3,976
13-03-20 조회 4,687
13-03-19 조회 5,582
13-03-14 조회 3,720
13-03-14 조회 4,131
13-03-14 조회 4,419
13-03-08 조회 4,029
13-03-03 조회 4,446
13-02-24 조회 4,870
13-02-21 조회 4,577
13-02-19 조회 4,539