자바스크립트 질문입니다
본문
버튼을 눌럿을때 열리고 다시눌럿을때 닫히는 스크립트인데,
먼저 열려있는 상태로 누르면 닫히는 스크립트로 수정하고싶은데
도와주실수있나요!!
<script>
$(function() {
var $elem = $("#fixedBanner");
var $width = $elem.find('.inner').width();
// 열고닫기 버튼 클릭시
$("#fixedToggle").click(function() {
var isClosed = $elem.hasClass('open');
if(isClosed === false) {
$elem.stop(true,true).animate({right:0 + 'px'}, 300);
$elem.addClass('open');
} else {
$elem.stop(true,true).animate({right:-($width) + 'px'}, 300);
$elem.removeClass('open');
}
});
});
$(function() {
$(".thumbnail ul li a").mouseenter(function() {
$(this).find('span').stop().fadeIn(300);
}).mouseleave(function() {
$(this).find('span').stop().fadeOut(300);
});
});
$(window).resize(
function(e) {
setLayout();
}
);
function setLayout(){
$win_height = $(window).height();
$("#fixedBanner .inner .thumbnail").height($win_height-187);
}
</script>
답변 2
자스 소스만 보면 제대로 구현되어 있는거 같은데요.
#fixedToggle <--이게 열리고 닫히는 버튼 같구요.
isClosed <-- 이게 열고 닫히게 하는 변수 입니다.
그 아래
if(isClosed === false) {
$elem.stop(true,true).animate({right:0 + 'px'}, 300);
$elem.addClass('open');
} else {
$elem.stop(true,true).animate({right:-($width) + 'px'}, 300);
$elem.removeClass('open');
}
여기에서 열고 닫히기가 자동으로 처리가 되는 거거든요.
만약 안된다면 어떤 부분에 문제가 있는지 관련된 html 소스도 같이 봐야 할 거 같네요.
html 태그까지 올려주시면 더 좋을듯한데요 그리고 먼저 열린상태를 구현하려면 해당 객체에 show를 적용해서 열린상태를 하던지 css에 display block으로 처리하면 될듯한데요