자바스크립트 고수님께 (+ - 버튼이미지 스왑 관련)

작업하다 곤란하면 제일 먼저 찾는 곳이 여기 뿐이네요...
JS / JQuery 관련 질문인데 도움을 부탁드립니다. ㅠㅠ

Toggle 관련 Jquery를 사용해서 페이지 제작중입니다.

http://jandspace.com/kaplan/toggle_test.html

위 링크에 보시면 + 버튼이 3개 있고 그 중 제일 위에 링크를 누르면
DIV가 슬라이딩되면서 내려오고 + 버튼은 - 버튼으로 바뀝니다.

문제는 똑같은 스크립트를 아래 2개의 버튼에 적용하면 작동을 하지 않습니다.

링크 갯수는 딱 3개만 둘 것은 아니고 여러 개가 추가될 수 있어서요
onclick 이벤트를 입력한 곳에 해당 라인의 + - 버튼에만 이벤트가 발생했으면 하는데요...
(아마도 변수가 필요한 것이 아닌지... 아니면 심플하게 만들 수 있을지...)

JS / JQuery 고수님들 한번 보시구서 도움을 주셨으면 합니다. (초보라서... 잘 알려주시면...^^;;)
미리 감사드립니닷!! 
|

댓글 2개

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<link type="text/css" rel="stylesheet" href="kaplan.css" media="screen" />

<style type="text/css">
.exp_box {
background-color: #FFFFFF;
padding: 10px;
margin: 4px 10px 16px 0;
border: 1px solid #c4c4c4;
text-align: justify;
line-height: 18px;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
-moz-box-shadow: inset 0 0 30px #DDDDDD;
-webkit-box-shadow: inset 0 0 30px #DDDDDD;
box-shadow: inset 0 0 30px #DDDDDD;
overflow: hidden;
display: none;
font-family: Tahoma, Geneva, sans-serif;
}
.exp_box p {
margin: 0;
padding: 0;
}
.close_box {
text-align: right;
display: block;
padding: 0 0 0 0;
}
.exp_box h3 {
margin: 0 0 -16px 0;
padding: 0;
color: #415bf5;
font-size: 17px;
}
#box_button {
vertical-align: -3px;
margin: 0 0 0 6px;
}
.show_hide {
cursor: pointer;
}
</style>

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript">
(function ($) {
$(document).ready(function(){
$('.show_hide').showHide({
speed: 400, // speed you want the toggle to happen
easing: '', // the animation effect you want. Remove this line if you dont want an effect and if you haven't included jQuery UI
changeText: 0, // if you dont want the button text to change, set this to 0
showText: 'View',// the button text to show when a div is closed
hideText: 'Close' // the button text to show when a div is open

});

});

$.fn.showHide = function (options) {

//default vars for the plugin
var defaults = {
speed: 1000,
easing: '',
changeText: 0,
showText: 'Show',
hideText: 'Hide'

};
var options = $.extend(defaults, options);
var flag=0;

$(this).click(function () {

$('.toggleDiv').slideUp(options.speed, options.easing);
// this var stores which button you've clicked
var toggleClick = $(this);
// this reads the rel attribute of the button to determine which div id to toggle
var toggleDiv = $(this).attr('rel');
// here we toggle show/hide the correct div at the right speed and using which easing effect
$(toggleDiv).slideToggle(options.speed, options.easing, function() {
// this only fires once the animation is completed
if(options.changeText==1){
$(toggleDiv).is(":visible") ? toggleClick.text(options.hideText) : toggleClick.text(options.showText);
}
});

var img = $(this).find('img');
var src = img.attr('src');

//image is open
if(src == 'box_open.gif') {
img.attr('src','box_close.gif');
}
//image is close
if(src == 'box_close.gif') {
img.attr('src','box_open.gif');
}

return false;

});

};
})(jQuery);
</script>
</head>
<body>
<div style="width: 600px; font-size: 12px">
<h2><strong>Title</strong></h2>
<ul>
<li>

<a class="show_hide" rel="#slidingDiv1">Intensive English Courses<img name="img1" src="box_open.gif" alt="Box Open" id="box_button" /></a>
<div id="slidingDiv1" class="exp_box">
<p>
<h3>Intensive English Courses</h3><br />
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus imperdiet nibh a risus blandit ut fringilla ante adipiscing. Donec non ligula elit. Nulla suscipit dapibus vulputate. Cras purus dolor, scelerisque sed congue sed, aliquet pellentesque nisi. Suspendisse sed odio at mi iaculis elementum vitae a tellus. Nulla ac adipiscing enim. Pellentesque vulputate purus et nisl rhoncus volutpat. Proin dapibus, tortor nec dignissim lobortis, tortor nulla facilisis sapien, vitae rhoncus lorem lorem nec leo. Ut a tellus euismod neque feugiat ultricies fringilla id nisi. Integer eget justo ipsum. Pellentesque metus ipsum, egestas at molestie consequat, semper eget mi. Integer non ante in sem iaculis pretium. Suspendisse nec massa eget leo fringilla iaculis in a nulla. Duis at lobortis odio. Quisque in nunc velit. Sed pulvinar sem non felis dapibus dictum.
</p>
</div>
</li>
<li>Intensive English Academic Year and Semester</a></li>
<li>
<a class="show_hide" rel="#slidingDiv2">OPUS Paid work and study<img src="box_open.gif" alt="Box Open" id="box_button" /></a>
<div id="slidingDiv2" class="exp_box">
<p>
<h3>OPUS Paid work and study</h3><br />
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus imperdiet nibh a risus blandit ut fringilla ante adipiscing. Donec non ligula elit. Nulla suscipit dapibus vulputate. Cras purus dolor, scelerisque sed congue sed, aliquet pellentesque nisi. Suspendisse sed odio at mi iaculis elementum vitae a tellus. Nulla ac adipiscing enim. Pellentesque vulputate purus et nisl rhoncus volutpat. Proin dapibus, tortor nec dignissim lobortis, tortor nulla facilisis sapien, vitae rhoncus lorem lorem nec leo. Ut a tellus euismod neque feugiat ultricies fringilla id nisi. Integer eget justo ipsum. Pellentesque metus ipsum, egestas at molestie consequat, semper eget mi. Integer non ante in sem iaculis pretium. Suspendisse nec massa eget leo fringilla iaculis in a nulla. Duis at lobortis odio. Quisque in nunc velit. Sed pulvinar sem non felis dapibus dictum.
</p>
</div>
</li>
<li>
<a class="show_hide" rel="#slidingDiv3">Internship placement service<img src="box_open.gif" alt="Box Open" id="box_button" /></a>
<div id="slidingDiv3" class="exp_box">
<p>
<h3>Internship placement service</h3><br />
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus imperdiet nibh a risus blandit ut fringilla ante adipiscing. Donec non ligula elit. Nulla suscipit dapibus vulputate. Cras purus dolor, scelerisque sed congue sed, aliquet pellentesque nisi. Suspendisse sed odio at mi iaculis elementum vitae a tellus. Nulla ac adipiscing enim. Pellentesque vulputate purus et nisl rhoncus volutpat. Proin dapibus, tortor nec dignissim lobortis, tortor nulla facilisis sapien, vitae rhoncus lorem lorem nec leo. Ut a tellus euismod neque feugiat ultricies fringilla id nisi. Integer eget justo ipsum. Pellentesque metus ipsum, egestas at molestie consequat, semper eget mi. Integer non ante in sem iaculis pretium. Suspendisse nec massa eget leo fringilla iaculis in a nulla. Duis at lobortis odio. Quisque in nunc velit. Sed pulvinar sem non felis dapibus dictum.
</p>
</div>
</li>
</ul>
</div>
</body>
</body>
</html>
저를 살리셨습니다.
무한 감사를 드립니다. (_ _) 정말 잘되네요...(^_^)=b
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

태그 필터 (최대 3개) 전체 개발자 소스 기타 mysql 팁자료실 javascript php linux flash 정규표현식 jquery node.js mobile 웹서버 os 프로그램 강좌 썸네일 이미지관련 도로명주소 그누보드5 기획자 견적서 계약서 기획서 마케팅 제안서 seo 통계 서식 통계자료 퍼블리셔 html css 반응형 웹접근성 퍼블리싱 표준화 반응형웹 홈페이지기초 부트스트랩 angularjs 포럼 스크린리더 센스리더 개발자톡 개발자팁 퍼블리셔톡 퍼블리셔팁 기획자톡 기획자팁 프로그램강좌 퍼블리싱강좌
+
제목 글쓴이 날짜 조회
13년 전 조회 778
13년 전 조회 1,148
13년 전 조회 688
13년 전 조회 1,801
13년 전 조회 1,086
13년 전 조회 1,103
13년 전 조회 718
13년 전 조회 1,363
13년 전 조회 2,166
13년 전 조회 694
13년 전 조회 587
13년 전 조회 769
13년 전 조회 3,348
13년 전 조회 827
13년 전 조회 1,373
13년 전 조회 1,155
13년 전 조회 802
13년 전 조회 7,803
13년 전 조회 1,184
13년 전 조회 1,828
13년 전 조회 821
13년 전 조회 1,169
13년 전 조회 995
13년 전 조회 1,966
13년 전 조회 3,379
13년 전 조회 1,609
13년 전 조회 3,318
13년 전 조회 1,475
13년 전 조회 3,924
13년 전 조회 1,479
13년 전 조회 987
13년 전 조회 1,943
13년 전 조회 2,725
13년 전 조회 1,639
13년 전 조회 1,456
13년 전 조회 3,215
13년 전 조회 1,241
13년 전 조회 807
13년 전 조회 1,686
13년 전 조회 921
13년 전 조회 5,244
13년 전 조회 896
13년 전 조회 1,283
13년 전 조회 885
13년 전 조회 903
13년 전 조회 1,026
13년 전 조회 1,820
13년 전 조회 1,643
13년 전 조회 1,370
13년 전 조회 1,567
13년 전 조회 3,715
13년 전 조회 825
13년 전 조회 1,729
13년 전 조회 1,540
13년 전 조회 696
13년 전 조회 824
13년 전 조회 700
13년 전 조회 8,432
13년 전 조회 918
13년 전 조회 1,716
13년 전 조회 1,387
13년 전 조회 815
13년 전 조회 565
13년 전 조회 3,790
13년 전 조회 609
13년 전 조회 759
13년 전 조회 1,832
13년 전 조회 1,328
13년 전 조회 1,359
13년 전 조회 1,070
13년 전 조회 1,015
13년 전 조회 766
13년 전 조회 1,312
13년 전 조회 917
13년 전 조회 1,745
13년 전 조회 1,087
13년 전 조회 2,764
13년 전 조회 638
13년 전 조회 2,292
13년 전 조회 2,688
13년 전 조회 4,447
13년 전 조회 1,021
13년 전 조회 1,236
13년 전 조회 1,420
13년 전 조회 1,233
13년 전 조회 1,244
13년 전 조회 2,901
13년 전 조회 1,326
13년 전 조회 1,076
13년 전 조회 1,204
13년 전 조회 1,207
13년 전 조회 885
13년 전 조회 1,754
13년 전 조회 2,155
13년 전 조회 1,428
13년 전 조회 1,025
13년 전 조회 1,001
13년 전 조회 898
13년 전 조회 1,622
13년 전 조회 2,666
🐛 버그신고