이번 장에서는 jQuery stop(), Callback,Chaining 에 대해서 알아보겠습니다.
jQuery stop()
stop()은 말 그대로 어떤 액센이 수행될때 멈추는 것을 말합니다.
기본 문법은 $(selector).stop(stopAll,goToEnd); 사용할 수 있습니다.
기본 예제
$("#stop").click(function(){
$("#panel").stop();
});
관련예제
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<script>
$(document).ready(function(){
$("#flip").click(function(){
$("#panel").slideDown(5000);
});
$("#stop").click(function(){
$("#panel").stop();
});
});
</script>
<style type="text/css">
#panel,#flip
{
padding:5px;
text-align:center;
background-color:#e5eecc;
border:solid 1px #c3c3c3;
}
#panel
{
padding:50px;
display:none;
}
</style>
</head>
<body>
<button id="stop">슬라이딩 멈춰라</button>
<div id="flip">슬라이딩 해라</div>
<div id="panel">Park's 블로그</div>
</body>
</html>
// 슬라이딩을 하는 도중에 "슬라이딩 멈춰라" 버튼을 클릭하면 슬라이딩이 멈추는것을 볼 수 있습니다.
jQuery Callback Functions
자바스크립트는 기본적으로 한줄씩 실행이 됩니다. 그러나 어떤 경우에는 함수가 실행이 끝나지 않았을때 실행이 될수도 있는데 그것을 방지하기 위해 callback를 이용하여 오류를 막을수 있습니다.
기본예제
$("button").click(function(){
$("p").hide("slow",function(){
alert("The paragraph is now hidden");
});
});
// 위 예제는 P태그 구문을 hide(숨김) 을 진행한 후 alert 메시지가 나타납니다.
$("button").click(function(){
$("p").hide(1000);
alert("The paragraph is now hidden");
});
//위 예제는 callback을 하지 않은 경우인데 위처럼 코딩이 되면 alert 메시지가 먼저 나타나고 hide를 실행하는 모습을 볼수 있습니다.
이처럼 callback의 역할은 선 함수를 실행시킨후 후 진행하게 할 경우 사용합니다.
jQuery Chaining
chaning는 단일문에서 여러개의 jquery 옵션을 실행할 수 있습니다.
기본구문
$("#p1").css("color","red").slideUp(2000).slideDown(2000);
$("#p1").css("color","red")
.slideUp(2000)
.slideDown(2000);
위 두 구문은 같은 것입니다. 한줄로 코딩을 해도되며, 아랫줄에 코딩을 해도 같은 현상이 나타납니다.
한줄보다는 여러줄이 보기가 쉽겠죠. 그래서 전 코딩할때 여러줄에 코딩을 합니다. ㅎ
관련예제
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<script>
$(document).ready(function()
{
$("button").click(function(){
$("#p1").css("color","red").slideUp(2000).slideDown(2000);
});
});
</script>
</head>
<body>
<p id="p1">재미있는 jQuery!!</p>
<button>클릭해보세요</button>
</body>
</html>
// "클릭하세요" 버튼을 클릭하면 위 그림처럼 "재미있는 jQuery" 의 구문이 빨간색으로 바뀌고 slideUp, slideDown이 실행됩니다.
괄호() 안의 2000은 2초라는 의미입니다. 즉 2초동안 위로 올라가고 2초동안 아래로 내려오라는 의미입니다.
지금까지 jQuery Effects 에 대해서 알아보았습니다. 코딩은 반복 학습이 중요하고, 응용력이 중요한거 같습니다.
예제들을 보시고 응용을 하다보면 어느새 실력이 발전되있음을 느끼실 수 있을거라 생각됩니다.
개발자들 화이팅 입니다. ^^
'jQuery > jQuery Effects' 카테고리의 다른 글
jQuery Effects - Animation (0) | 2013.05.15 |
---|---|
jQuery Effects - Sliding (0) | 2013.05.14 |
jQuery fadeIn(), fadeOut(), fadeToggle(), fadeTo() (0) | 2013.05.13 |
jQuery hide(), show(), toggle() (0) | 2013.05.13 |