티스토리 스크롤 배너 적용 방법.
1. skin.html 에 배너 붙이기.
먼저 스크롤 배너를 넣고 싶은 위치에 추가를 해주는게 제일 먼저해야 할 일입니다.
티스토리 "관리페이지" 에서 HTML/CSS 페이지로 이동을 해주세요.
저 같은 경우에는 본문을 보여주는 페이지에서만 스크롤 배너를 적용하고 싶었기 때문에 <s_article_rep></s_article_rep> 해당 테그 안에 배너를 넣었습니다.
<h2 class="hidden">글</h2>
<div class="wrap_entry_1">
<div class="wrap_cont_1">
<div class="tit">
"타이틀"
</div>
<div id="adv-scroll_1">
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<!-- adv#1_160_600 -->
<ins class="adsbygoogle"
style="display:inline-block;width:160px;height:600px"
data-ad-client="ca-pub-123123123451"
data-ad-slot="511842123338"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>
</div>
<div class="desc_1">
#_article_rep_desc_#
</div>
</div>
</div>
위 소스와 본인의 소스는 무조건 다를 것입니다. 같을 수는 없겠죠.
여튼 원하시는 위치에 광고배너를 위치시켜주세요.
2. style.css
그 다음해야 하는 일은 광고배너에 대한 스타일을 지정하는 것입니다.
#adv-scroll_1 {
position: absolute;
right: 0;
top: 15px;
margin-right: -320px;
text-align:left;
width: 300px;
}
위에서 수정해야 할 부분이 있는데요.
top : 배너를 가장 위에 붙일 꺼면 0으로 하시면 되구요. 떨어뜨리고 싶은 만큼 수치를 주시면 됩니다.
margin-right : width 크기 + 본문에서 떨어뜨리고 싶은 수치 하시면 되요. 저같은 경우 본문에서 20px 더 떨어뜨린 것입니다.
width : 광고배너의 가로폭입니다.
아참 그리고 더 중요한 것 하나!
#adv-scroll 태그를 감싸고 있는 태그에 대한 스타일을 하나 추가해야됩니다.
제 소스로 설명을 하자면 <div class="wrap_cont_1"></div> 이 태그에 position: relative; 를 추가해주셔야 합니다.
그냥 간단히 <div class="wrap_cont_1" style="position: relative;"></div> 이렇게 하셔도 됩니다.
그리고 혹시나 overflow: hidden 이라는 스타일이 있다면 제거해주셔야합니다.
3. 스크롤 이벤트 추가하기.
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
var timer;
$( window ).scroll(function() {
if(timer) {
window.clearTimeout(timer);
}
timer = window.setTimeout(function() {
/* "15"의 수치는 CSS에서 "top" 부분에 적으신 수치를 말합니다. */
var sTop = $( window ).scrollTop() + 15;
if (sTop < 0)
sTop = 15;
/* IE8에서는 비정상적으로 동작을 하는 경우가 있어요. */
/* 그래서 IE8에서는 부드러운 움직임 없어요. */
var rv = -1;
if (navigator.appName == 'Microsoft Internet Explorer') {
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null)
rv = parseFloat(RegExp.$1);
rv = Number(rv);
}
if (rv >= 0 && rv <= 8) {
$( "#adv-scroll_1" ).stop( true, true ).css('top', sTop);
} else {
$( "#adv-scroll_1" ).stop( true, true ).animate({
'top': sTop
}, 600, function() {
// Animation complete.
});
}
}, 200);
});
});
</script>
</body>
위 이벤트 소스에 대해서는 그냥 주석으로 설명을 대신 할께요.
아참 이 부분은 </body> 바로 위에 추가해주시면 됩니다.
감사합니다.
'『IT/개발』 > HTML' 카테고리의 다른 글
HTML 작성 시 Javascript 선언 위치때문에 겪은일. (0) | 2014.12.03 |
---|---|
jQuery 라디오(radio)버튼, 체크박스(checkbox) 선택/해제 하기 (0) | 2014.11.30 |
Bootstrap 용 bootstrap-monthpicker 예제! (0) | 2014.10.03 |
jQuery 플러그인 jQuery.mtz.monthpicker 예제 (0) | 2014.09.29 |
[D3.js] SVG 에 MouseOver 툴팁 (Tooltip) 추가하기! (0) | 2014.04.14 |