์์ดํฐ ๋ฐฐ๊ฒฝ fixed ์ด ๋ฐ์์๋จ
pc์์ ์ ๋ณด์ด์ง๋ง
์์ดํฐ์์ ๋ฐฐ๊ฒฝ์์ ๋ฐฐ๊ฒฝ fixed (์คํฌ๋กค ์์ง์์๋ ๋ฐฐ๊ฒฝ์ด ๊ณ ์ ๋ ์ํ๋ก ์์ง์ด๋ ) ๊ฐ ๋ฐ์์ด์๋จ
์ด๋ฏธ์ง๊ฐ ํ๋๋๊ณ ๊นจ์ง
์๋๋ก์ด๋๋ ์ ๋ณด์
๋ค๋ฅธ๋ฐฉ๋ฒ์ผ๋ก ๋ฐ์ํ๊ธฐ (์์ดํฐ๋์)
๋ฐฉ๋ฒ 1 ๋ฐฐ๊ฒฝ์ผ๋ก ๊น์์ค๋ค.
๋ค๋ฅธ ์น์ ์ ๋ฐฐ๊ฒฝ์ ์ผ์ผํ ๊น์์ฃผ๊ณ ,
ํ์ฌ ์น์ ์ ๋ฐฐ๊ฒฝ fixed ๊ฐ ์๋
position ์ผ๋ก ๋์ฐ๊ณ z-index๋ก ๋งจ ๋ฐ์ ๊น์์ค๋ค.
/* ์์ดํฐ์์ ๋ฐฐ๊ฒฝ fixed ๋งํ์์ */
.main_vision .bg_fixed {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: -1;
/* ์ฐฝ๊ธฐ์ค์ผ๋ก ์์น ์๊ด์์ด ๋ ์ค๋ฆ */
background: url(../images/bg_main_vision.jpg) no-repeat 50% 50% / cover;
}
๋ฌธ์ ์
pc ๋ฐ ์๋๋ก์ด๋์์ ์ ๋ฐ์๋์ง๋ง
์์ดํฐ ์คํฌ๋กค ํ๊น ํ์์ผ๋ก ์คํฌ๋กค ์ ๋ฐ์ ๋ฐฐ๊ฒฝ์ด ๋ค๋ฅธ์น์ ์์ ๋ณด์ธ๋ค.
๋๋ฌธ์ ์ ์ด์ฟผ๋ฆฌ ์คํฌ๋กค ์ด๋ฒคํธ๋ก ์คํฌ๋กค์ด ๋๋ฉด ๋ฐฐ๊ฒฝ์์ฒด๋ฅผ ์จ์ผ๋ฒ๋ฆฐ๋ค.
์คํฌ๋กค ํ์ผ๋ก ๊ฐ๋ฆฌ๊ธฐ |
์คํฌ๋กค ํ์ด ์์์ ์์น๋ณด๋ค ํฌ๋ฉด ๋งจ์ <์คํฌ๋กคํ ๋> ์์๊ฐ ํ์ด์ง ์๋จ๊น์ง ์คํฌ๋กค - scrollTop ์ด $('์์').offset().top ๋ณด๋ค ํด๋ <๋ฐ์์ ์ฌ๋ผ์ค๋์ํฉ> ์ฐฝ๋์ด๋งํผ ๋ ์คํฌ๋กค ํ์๋ ์์๊ฐ ์๋์์ ํ๋ฉด์์ผ๋ก ๋ค์ด์ค๋ ๊ฒฝ์ฐ - srollTop์ด $('์์').offset().top - $(window).outerHight() ๋ณด๋ค ํฌ๋ฉด <๋ฌธ์ ์๋๊น์ง ์คํฌ๋กค> ๊ฐ์ฅ ๋ฐ๋ฅ๊น์ง - scrollTop์ด $(document).outerHeight() - $(window).outerHeight() ๋งํผ |
์ฆ ์คํฌ๋กค
$(function () {
var winH = $(window).outerHeight();
$(window)
.on('scroll', function () {
var st = $(this).scrollTop();
// ๋ฐฐ๊ฒฝ๊ณ ์ ํจ๊ณผ
if (st < 200 || st > $(document).outerHeight() - winH) {
$('.main_vision .bg_fixed').addClass('hide');
} else {
$('.main_vision .bg_fixed').removeClass('hide');
}
})
.trigger('scroll');
win ์ ์๋์ฐ์ ์ฐฝ ๋์ด์ด๋ค.
st ๋ ์คํฌ๋กค์ ์์น์ด๋ค.
winH ๋ ์๋์ฐ ์ฐฝ๋์ด ์ด๋ค.
๋ง์ฝ ์คํฌ๋กค์ ์์น๊ฐ 200 ๋ณด๋ค ์๊ฑฐ๋
๋๋ (||) ์คํฌ๋กค์ ์์น๊ฐ '๋ฐ๋ฅ์์์ ์ฐฝ๋์ด '์ฐฝ๋์ด๋ฅผ ๋บ ๊ฐ'๋ณด๋ค ํฌ๋ฉด
(๋ด๊ฐ ์ง๊ธ ํ์ฌ ๋ณด๊ณ ์๋ ํ๋ฉด์ด ์๋๋ฏ๋ก ๋ค๋ฅธ๊ณณ์์ ๋์ค์ง์๊ฒ)
๋ฐฐ๊ฒฝ์ด๋ฏธ์ง๋ฅผ ์จ๊ธฐ๊ณ
์๋๋ฉด ๋ณด์ฌ๋ผ
