젠

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

· 2012-03-08 (목) 20:01:12 · 3811 · 2
작업하다 곤란하면 제일 먼저 찾는 곳이 여기 뿐이네요...
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>
2012-03-09 (금) 15:45:21
저를 살리셨습니다.
무한 감사를 드립니다. (_ _) 정말 잘되네요...(^_^)=b
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
12-04-26 조회 4,786
12-04-26 조회 2,649
12-04-26 조회 2,885
12-04-26 조회 2,697
12-04-26 조회 3,009
12-04-25 조회 2,439
12-04-25 조회 2,651
12-04-25 조회 2,632
12-04-25 조회 2,690
12-04-25 조회 2,545
12-04-25 조회 2,887
12-04-24 조회 4,013
12-04-24 조회 2,541
12-04-24 조회 2,450
12-04-24 조회 2,680
12-04-24 조회 2,619
12-04-24 조회 2,507
12-04-24 조회 2,834
12-04-24 조회 2,791
12-04-24 조회 2,537
12-04-24 조회 2,567
12-04-24 조회 3,165
12-04-24 조회 2,491
12-04-24 조회 2,656
12-04-24 조회 2,546
12-04-23 조회 2,528
12-04-23 조회 2,549
12-04-23 조회 2,858
12-04-23 조회 2,535
12-04-23 조회 3,445
12-04-23 조회 2,427
12-04-23 조회 2,501
12-04-23 조회 2,630
12-04-23 조회 2,510
12-04-23 조회 2,640
12-04-23 조회 2,696
12-04-23 조회 2,474
12-04-23 조회 3,364
12-04-22 조회 2,513
12-04-22 조회 2,473
12-04-22 조회 2,557
12-04-22 조회 2,781
12-04-22 조회 2,569
12-04-22 조회 3,229
12-04-21 조회 4,024
12-04-21 조회 7,680
12-04-21 조회 2,586
12-04-21 조회 3,026
12-04-21 조회 2,515
12-04-21 조회 2,757
12-04-20 조회 2,724
12-04-20 조회 2,812
12-04-20 조회 2,597
12-04-20 조회 2,726
12-04-20 조회 3,846
12-04-20 조회 2,889
12-04-16 조회 2,646
12-04-07 조회 2,613
12-04-03 조회 3,068
12-04-02 조회 3,175
12-03-28 조회 2,604
12-03-26 조회 6,050
12-03-25 조회 2,672
12-03-25 조회 2,813
12-03-24 조회 2,903
12-03-23 조회 2,767
12-03-22 조회 5,671
12-03-13 조회 2,647
12-03-11 조회 3,068
12-03-11 조회 3,998
12-03-11 조회 4,816
12-03-11 조회 3,707
12-03-11 조회 3,674
12-03-11 조회 5,328
12-03-06 조회 2,788
12-03-06 조회 2,874
12-03-05 조회 2,940
12-03-02 조회 2,866
12-03-01 조회 6,388
12-03-01 조회 3,201
12-02-29 조회 5,343
12-02-17 조회 2,955
12-02-16 조회 2,759
12-02-14 조회 3,748
12-02-14 조회 2,923
12-02-08 조회 2,896
12-02-07 조회 2,529
12-02-06 조회 1.2만
12-02-04 조회 2,789
12-02-02 조회 2,871
12-01-29 조회 4,556
12-01-27 조회 2,730
12-01-25 조회 3,884
12-01-24 조회 4,234
12-01-21 조회 3,302
12-01-21 조회 3,067
12-01-16 조회 3,468
12-01-16 조회 3,954
12-01-14 조회 2,799
12-01-13 조회 4,361