prototype.js ¸¦ À§ÇÑ °³¹ßÀÚ ³ëÆ®

1.4.0 ¹öÀüÀ» ´Ù·ë

Sergio Pereira¿¡ ÀÇÇØ ÀÛ¼ºµÊ
ÃÖ±Ù ¾÷µ¥ÀÌÆ®: 2006³â 4¿ù 13ÀÏ

Table of Contents

PrototypeÀº ¹«¾ùÀΰ¡.? °ü·Ã±Û utility ÇÔ¼ö $() ÇÔ¼ö »ç¿ëÇϱâ $F() ÇÔ¼ö »ç¿ëÇϱâ $A() ÇÔ¼ö »ç¿ëÇϱâ $H() ÇÔ¼ö »ç¿ëÇϱâ $R() ÇÔ¼ö »ç¿ëÇϱâ Try.these() ÇÔ¼ö »ç¿ëÇϱâ Ajax °´Ã¼ Ajax.Request class »ç¿ëÇϱâ Ajax.Updater class »ç¿ëÇϱ⠿­°Å(Enumerating)... Wow! Damn! Wahoo! ·çÇÁ, ·çºñ-½ºÅ¸ÀÏ ½ºÅ×·ÎÀ̵å(steroids)¿¡¼­ ´ç½ÅÀÇ ¹è¿­ ³»°¡ °­·ÂÇÏ°Ô ÃßõÇϴ åµé. prototype.js ÂüÁ¶ JavaScript classes¸¦ À§ÇÑ È®Àå Object class¸¦ À§ÇÑ È®Àå Number class¸¦ À§ÇÑ È®Àå Function class¸¦ À§ÇÑ È®Àå String class¸¦ À§ÇÑ È®Àå Array class¸¦ À§ÇÑ È®Àå document DOM °´Ã¼¸¦ À§ÇÑ È®Àå Event °´Ã¼¸¦ À§ÇÑ È®Àå prototype.js¿¡ »õ·Ó°Ô Á¤ÀÇµÈ °´Ã¼¿Í Ŭ·¡½º PeriodicalExecuter °´Ã¼ Prototype °´Ã¼ Enumerable °´Ã¼ Hash °´Ã¼ ObjectRange class Class °´Ã¼ Ajax °´Ã¼ Ajax.Responders °´Ã¼ Ajax.Base class Ajax.Request class options ÀÎÀÚ °´Ã¼ Ajax.Updater class Ajax.PeriodicalUpdater class Element °´Ã¼ Element.ClassNames class Abstract °´Ã¼ Abstract.Insertion class Insertion °´Ã¼ Insertion.Before class Insertion.Top class Insertion.Bottom class Insertion.After class Field °´Ã¼ Form °´Ã¼ Form.Element °´Ã¼ Form.Element.Serializers °´Ã¼ Abstract.TimedObserver class Form.Element.Observer class Form.Observer class Abstract.EventObserver class Form.Element.EventObserver class Form.EventObserver class Position °´Ã¼ (»çÀü ÁغñÁßÀÎ ¹®¼­)

PrototypeÀº ¹«¾ùÀΰ¡.?

prototype.js´Â Sam Stephenson¿¡ ÀÇÇØ ÀÛ¼ºµÈ ÀÚ¹Ù½ºÅ©¸³Æ® ¶óÀ̺귯¸®ÀÌ´Ù. ÀÌ ³î¶øµµ·Ï ¸ÚÁø »ý°¢°ú Ç¥ÁØ¿¡ ÀÇÇØ Àß ÀÛ¼ºµÈ ÄÚµåÀÇ ÀϺδ À¥2.0ÀÇ Æ¯¼ºÀ» ³ªÅ¸³»´Â dzºÎÇÏ°í »óÈ£ÀÛ¿ëÇÏ´Â À¥ÆäÀÌÁö¿Í ¸¹Àº ¿¬°üÀ» °¡Áø´Ù.

¸¸¾à ´ç½ÅÀÌ ÃÖ±Ù ÀÌ ¶óÀ̺귯¸®¸¦ »ç¿ëÇϱ⠽ÃÀÛÇß´Ù¸é, ´ç½ÅÀº ¾Æ¸¶µµ ÀÌ ¹®¼­°¡ °¡Àå ÁÁÀº Áö½Ã»çÇ×Áß¿¡ Çϳª´Â ¾Æ´Ï¶ó´Â°ÍÀ» ¾Ë¾ÆÂ÷·ÈÀ»°ÍÀÌ´Ù. ³ª ÀÌÀü¿¡ ´Ù¸¥ ¸¹Àº °³¹ßÀÚµéó·³, ³ª´Â ¼Ò½ºÄÚµå¿Í À̰ÍÀ» »ç¿ëÇÑ °æÇè¿¡¼­ prototype.js¿¡ ´ëÇÑ Áö½ÄÀ» °¡Áö°Ô µÇ¾ú´Ù. ³ª´Â ¸ðµç À̰¡ ¹è¿ì°í °øÀ¯ÇÏ´Â µ¿¾È Á»´õ ¸¹Àº Á¤º¸¸¦ ¾ò°Ô µÇ´Â°Ô °¡Àå ÁÁÀº °ÍÀ̶ó°í »ý°¢ÇÑ´Ù.

³ª´Â objects, classes, functions, ±×¸®°í ÀÌ ¶óÀ̺귯¸®¿¡ ÀÇÇØ Á¦°øµÇ´Â È®ÀåÀ» À§ÇÑ ºñ°ø½ÄÀûÀÎ ÂüÁ¶¹®¼­ ¶ÇÇÑ Á¦°øÇÑ´Ù.

´ç½ÅÀÌ ¿¹Á¦¿Í ÂüÁ¶¹®¼­¸¦ ÀоúÀ»¶§, RubyÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡ Ä£¼÷ÇÑ °³¹ßÀÚ´Â RubyÀÇ ³»Àå Ŭ·¡½º¿Í ÀÌ ¶óÀ̺귯¸®¿¡ ÀÇÇØ ±¸ÇöµÈ ¸¹Àº È®Àå »çÀÌÀÇ ÀǵµÀûÀÎ À¯»ç¼ºÀ» ¾Ë¾ÆÂ÷¸®°Ô µÉ°ÍÀÌ´Ù.

toc

°ü·Ã±Û

°í±Þ ÀÚ¹Ù½ºÅ©¸³Æ® °¡À̵幮¼­.

toc

À¯Æ¿¸®Æ¼ ÇÔ¼öµé(utility functions)

¶óÀ̺귯¸®´Â ¹Ì¸® Á¤ÀÇµÈ ¸¹Àº ¼öÀÇ °´Ã¼¿Í À¯Æ¿¸®Æ¼ ÇÔ¼ö¸¦ °¡Áø´Ù. ÀÌ ¾Ë±â½¬¿î ÇÔ¼öµéÀÇ ¸ñÀûÀº ¹Ýº¹ÀûÀΠŸÀÌÇΰú ¾î±¸¸¦ ¸¹ÀÌ ÁÙÀ̴µ¥ ÀÖ´Ù.

toc

$() ÇÔ¼ö »ç¿ëÇϱâ

$()ÇÔ¼ö´Â °¡Àå ¸¹ÀÌ »ç¿ëµÇ´Â DOMÀÇ document.getElementById()ÇÔ¼ö¿¡ ´ëÇÑ Æí¸®ÇÑ ´ÜÃàŰÀÌ´Ù. DOMÇÔ¼öó·³, À̰ÍÀº ÀÎÀÚ·Î ´øÁ®Áø id¸¦ °¡Áø ¿ä¼Ò¸¦ Çϳª ¹ÝȯÇÑ´Ù.

ÇÏÁö¸¸ DOMÇÔ¼ö¿Í´Â ´Þ¸®, À̰ÍÀº ¿©·¯°³ÀÇ id¸¦ »ç¿ëÇÒ¼ö ÀÖ°í $()´Â ¿äûµÈ ¿ä¼Ò¸¦ °¡Áø Array°´Ã¼¸¦ ¹ÝȯÇÒ°ÍÀÌ´Ù. ¿¹Á¦´Â ¾Æ·¡¿Í °°´Ù.

<HTML>
<HEAD>
<TITLE> Test Page </TITLE>
<script src="prototype-1.4.0.js"></script>

<script>
	function test1()
	{
		var d = $('myDiv');
		alert(d.innerHTML);
	}

	function test2()
	{
		var divs = $('myDiv','myOtherDiv');
		for(i=0; i<divs.length; i++)
		{
			alert(divs[i].innerHTML);
		}
	}
</script>
</HEAD>

<BODY>
	<div id="myDiv">
		<p>This is a paragraph</p>
	</div>
	<div id="myOtherDiv">
		<p>This is another paragraph</p>
	</div>

	<input type="button" value=Test1 onclick="test1();"><br> 
	<input type="button" value=Test2 onclick="test2();"><br> 

</BODY>
</HTML>

ÀÌ ÇÔ¼öÀÇ ´Ù¸¥ ÁÁÀº Á¡Àº À̰ÍÀº ÀÎÀÚÇüŸ¦ °¡Áú¼ö ÀÖ´Â ´Ù¸¥ ÇÔ¼ö¸¦ »ý¼ºÇÒ¶§ ¸Å¿ì À¯¿ëÇϵµ·Ï ¸¸µé¾îÁÖ´Â id¹®ÀÚ¿­À̳ª ¿ä¼Ò°´Ã¼ ÀÚü¸¦ ´øÁú¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù.

toc

$F() ÇÔ¼ö »ç¿ëÇϱâ

$F() ÇÔ¼ö´Â ´Ù¸¥ ´ÜÃàŰÀÌ´Ù. À̰ÍÀº text¹Ú½º³ª µå¶ø´Ù¿î list¿Í °°Àº ¾î¶² ÇʵåÀÇ ÀÔ·Â ÄÁÆ®·ÑÀÇ °ªÀ» ¹ÝȯÇÑ´Ù. ÀÌ ÇÔ¼ö´Â ¿ä¼Ò id³ª ¿ä¼Ò°´Ã¼ ÀÚü¸¦ ÀÎÀÚ·Î °¡Áú¼ö ÀÖ´Ù.

<script>
	function test3()
	{
		alert(  $F('userName')  );
	}
</script>

<input type="text" id="userName" value="Joe Doe"><br> 
<input type="button" value=Test3 onclick="test3();"><br> 
			

toc

$A() ÇÔ¼ö »ç¿ëÇϱâ

$A() ÇÔ¼ö´Â À̰ÍÀ» ¹Þ¾ÆµéÀÌ´Â ÇϳªÀÇ ÀÎÀÚ¸¦ Array°´Ã¼·Î º¯È¯ÇÑ´Ù.

Array Ŭ·¡½º¸¦ À§ÇÑ È®Àå°ú Á¶ÇÕµÈ ÀÌ ÇÔ¼ö´Â À̰ÍÀ» ´õ¿í ½±°Ô ¸¸µç´Ù. ¿¹¸¦ µé¸é, ÀÛ¼ºÇÑ ÇÔ¼ö´Â ÀÎÀÚÀÇ ¼ö¸¦ À¯¿¬ÇÏ°Ô ¹Þ¾ÆµéÀδÙ.

<script>

	function showOptions(){
		var someNodeList = $('lstEmployees').getElementsByTagName('option');
		var nodes = $A(someNodeList);

		nodes.each(function(node){
				alert(node.nodeName + ': ' + node.innerHTML);
			});
	}
</script>

<select id="lstEmployees" size="10" >
	<option value="5">Buchanan, Steven</option>
	<option value="8">Callahan, Laura</option>
	<option value="1">Davolio, Nancy</option>
</select>

<input type="button" value="Show the options" onclick="showOptions();" > 
			

toc

$H() ÇÔ¼ö »ç¿ëÇϱâ

$H() ÇÔ¼ö´Â °áÇÕµÈ ¹è¿­À» ¿­°ÅÇÒ¼ö ÀÖ´Â Hash°´Ã¼·Î º¯È¯ÇÑ´Ù.

<script>
	function testHash()
	{
		//let's create the object
		var a = {
			first: 10,
			second: 20,
			third: 30
			};

		//now transform it into a hash
		var h = $H(a);
		alert(h.toQueryString()); //displays: first=10&second=20&third=30
	}

</script>
			

toc

$R() ÇÔ¼ö »ç¿ëÇϱâ

$R() ÇÔ¼ö´Â new ObjectRange(lowerBound, upperBound, excludeBounds)¸¦ ÀÛ¼ºÇϱâ À§ÇÑ ÂªÀº ÇüÅÂÀÌ´Ù.

ÀÌ Å¬·¡½ºÀÇ ¿ÏÀüÇÑ ¼³¸íÀ» º¸±â À§ÇØ ObjectRange Ŭ·¡½º ¹®¼­¸¦ º¸¶ó. each ¸Þ¼Òµå¸¦ ÅëÇØ ¹Ýº¹(iterators)ÀÇ »ç¿ë¹ýÀ» º¸¿©ÁÖ´Â °£´ÜÇÑ ¿¹Á¦¸¦ º¸ÀÚ. ´õ ¸¹Àº ¸Þ¼Òµå´Â Enumerable Ŭ·¡½º ¹®¼­¿¡¼­ º¼¼ö ÀÖÀ»°ÍÀÌ´Ù.

<script>
	function demoDollar_R(){
		var range = $R(10, 20, false);
		range.each(function(value, index){
			alert(value);
		});
	}

</script>

<input type="button" value="Sample Count" onclick="demoDollar_R();" > 
			

toc

Try.these() ÇÔ¼ö »ç¿ëÇϱâ

À̰ÍÀº ÀÎÀÚó·³ ¸¹Àº ¼öÀÇ ÇÔ¼ö¸¦ °¡Áö°í ±×°ÍµéÀ» ¼ø¼­´ë·Î Â÷·ÊÂ÷·Ê È£ÃâÇϵµ·Ï ÇØÁØ´Ù. À̰ÍÀº ÇÔ¼öÁß¿¡ Çϳª¾¿ ¼öÇàÇÏ°í ¼º°øÀûÀÎ ÇÔ¼öÈ£ÃâÀÇ °á°ú¸¦ ¹ÝȯÇÒ¶§±îÁö ¼øÂ÷ÀûÀ¸·Î ¼öÇàµÈ´Ù.

¿¹Á¦´Â ¾Æ·¡¿Í °°´Ù. xmlNode.text´Â ¸î¸î ºê¶ó¿ìÀú¿¡¼­ ÀÛµ¿Çϰí xmlNode.textContent´Â ´Ù¸¥ ºê¶ó¿ìÀú¿¡¼­ ÀÛµ¿ÇÑ´Ù. Try.these()ÇÔ¼ö¸¦ »ç¿ëÇÏ¸é ´ç½ÅÀº ÀÛµ¿ÇÏ´Â °ÍÁß Çϳª¸¦ ¹ÝȯÇÒ¼ö ÀÖ´Ù.

<script>
function getXmlNodeValue(xmlNode){
	return Try.these(
		function() {return xmlNode.text;},
		function() {return xmlNode.textContent;}
		);
}
</script>
			

toc

Ajax °´Ã¼

À§¿¡¼­ ¾ð±ÞµÈ À¯Æ¿¸®Æ¼ ÇÔ¼öµéÀº ÁÁ´Ù. ÇÏÁö¸¸ ´Ù½Ã º¸ÀÚ. ±×°ÍµéÀº ´ëºÎºÐ °í±Þ(advanced) ÇüÅ´ ¾Æ´Ï´Ù. ´ç½ÅÀº ½º½º·Î À̰͵éÀ» ¸¸µé¼ö ÀÖ°í ´ç½Å ÀڽŸ¸ÀÇ ½ºÅ©¸³Æ®¿¡ À¯»çÇÑ ÇÔ¼ö¸¦ ÀÌ¹Ì °¡Áö°í ÀÖÀ»¼öµµ ÀÖ´Ù. ÇÏÁö¸¸ ÀÌ·¯ÇÑ ÇÔ¼öµéÀº ´ÜÁö ÀϺκп¡ ÇØ´çµÇ´Â ÆÁÀÏ»ÓÀÌ´Ù.

³ª´Â prototype.js¿¡ ´ëÇÑ ´ç½ÅÀÇ °ü½ÉÀÌ ´ëºÎºÐÀÇ AJAX±â´ÉÀ» ´Ù·ê¼ö ÀÖ´Ù´Â °ÍÀ̶ó°í È®½ÅÇÑ´Ù. ±×·¡¼­ ´ç½ÅÀÌ AJAX·ÎÁ÷À» ¼öÇàÇÒ Çʿ䰡 ÀÖÀ»¶§ Á»´õ ½±°Ô »ç¿ëÇϵµ·Ï µµ¿ÍÁÖ´Â ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» »ìÆìº¸ÀÚ.

AJAX°´Ã¼´Â AJAXÇÔ¼ö¸¦ ÀÛ¼ºÇÒ ¶§ Æ÷ÇԵǴ Ʈ¸¯¼º°ÝÀÇ Äڵ带 Æ÷ÀåÇÏ°í ´Ü¼øÈ­Çϱâ À§ÇÑ ¶óÀ̺귯¸®¿¡ ÀÇÇØ »ý¼ºµÈ ¹Ì¸®-Á¤ÀÇµÈ °´Ã¼ÀÌ´Ù. ÀÌ °´Ã¼´Â ĸ½¶È­µÈ AJAX·ÎÁ÷À» Á¦°øÇÏ´Â ¸¹Àº ¼öÀÇ Å¬·¡½º¸¦ Æ÷ÇÔÇÑ´Ù. ±× Ŭ·¡½ºÁß¿¡ ¸î°³¸¦ »ìÆìº¸ÀÚ.

toc

Ajax.Request Ŭ·¡½º »ç¿ëÇϱâ

¸¸¾à ´ç½ÅÀÌ ¾î¶°ÇÑ ÇïÆÛ(helper) ¶óÀ̺귯¸®µµ »ç¿ëÇÏÁö ¾Ê´Â´Ù¸é, ´ç½ÅÀº XMLHttpRequest°´Ã¼¸¦ »ý¼ºÇϱâ À§ÇÑ ¸¹Àº Äڵ带 ÀÛ¼ºÇÒ °ÍÀÌ°í ´Ü°è¸¦ ºñµ¿±âÀûÀ¸·Î ¼öÇàÇÒ°ÍÀÌ´Ù. ±×¸®°í³ª¼­ ÀÀ´äÀ» »Ì¾Æ³»°í À̰ÍÀ» ó¸®ÇÑ´Ù. ±×¸®°í³ª¼­´Â ÇѰ¡Áö ÀÌ»óÀÇ ºê¶ó¿ìÀú¸¦ Áö¿øÇÏÁö ¾Ê´Â´Ù¸é ½º½º·Î Çà¿îÀ̶ó°í »ý°¢ÇÒ °ÍÀÌ´Ù.

AJAX±â´ÉÀ» Áö¿øÇϱâ À§ÇØ, ¶óÀ̺귯¸®´Â Ajax.RequestŬ·¡½º¸¦ Á¤ÀÇÇÑ´Ù.

´ç½ÅÀÌ ´ÙÀ½Ã³·³ XMLÀÀ´äÀ» ¹ÝȯÇÏ´Â http://yoursever/app/get_sales?empID=1234&year=1998 urlÀ» ÅëÇØ ¼­¹ö¿Í Åë½ÅÇÒ¼ö ÀÖ´Â ¾ÖÇø®ÄÉÀ̼ÇÀ» °¡Áö°í ÀÖ´Ù°í ÇØº¸ÀÚ.

<?xml version="1.0" encoding="utf-8" ?> 
<ajax-response>
	<response type="object" id="productDetails">
		<monthly-sales>
			<employee-sales>
				<employee-id>1234</employee-id> 
				<year-month>1998-01</year-month> 
				<sales>$8,115.36</sales> 
			</employee-sales>
			<employee-sales>
				<employee-id>1234</employee-id> 
				<year-month>1998-02</year-month> 
				<sales>$11,147.51</sales> 
			</employee-sales>
		</monthly-sales>
	</response>
</ajax-response>			
			

XMLÀ» °¡Á®¿À±â À§ÇØ ¼­¹ö¿Í Åë½ÅÇÏ´Â °ÍÀº Ajax.Request°´Ã¼¸¦ »ç¿ëÇÏ¸é ¸Å¿ì °£´ÜÇÏ´Ù. ¾Æ·¡ÀÇ »ùÇÃÀº À̰ÍÀ» ¼öÇàÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁØ´Ù.

<script>
	function searchSales()
	{
		var empID = $F('lstEmployees');
		var y = $F('lstYears');
		var url = 'http://yourserver/app/get_sales';
		var pars = 'empID=' + empID + '&year=' + y;
		
var myAjax = new Ajax.Request( url, { method: 'get', parameters: pars, onComplete: showResponse });
} function showResponse(originalRequest) { //put returned XML in the textarea $('result').value = originalRequest.responseText; } </script> <select id="lstEmployees" size="10" onchange="searchSales()"> <option value="5">Buchanan, Steven</option> <option value="8">Callahan, Laura</option> <option value="1">Davolio, Nancy</option> </select> <select id="lstYears" size="3" onchange="searchSales()"> <option selected="selected" value="1996">1996</option> <option value="1997">1997</option> <option value="1998">1998</option> </select> <br><textarea id=result cols=60 rows=10 ></textarea>

Ajax.Request°´Ã¼ÀÇ »ý¼ºÀÚÀÇ µÎ¹øÂ° ÆÄ¶ó¹ÌÅ͸¦ ¾Ë¾Æº¸°Ú´Â°¡.? {method: 'get', parameters: pars, onComplete: showResponse} ÆÄ¶ó¹ÌÅÍ´Â ¹®ÀÚÀû Ç¥±â¹ýÀ¸·Î ÀÍ¸í °´Ã¼¸¦ ³ªÅ¸³½´Ù. À̰ÍÀÌ ÀǹÌÇÏ´Â °ÍÀº 'get' ¹®ÀÚ¿­À» Æ÷ÇÔÇÏ´Â ¸í¸íµÈ ¸Þ¼Òµå(method)ÀÇ ÇÁ¶óÆÛƼ, HTTP¿äû ¹®ÀÚ¿­À» Æ÷ÇÔÇÏ´Â ¸í¸íµÈ ÆÄ¶ó¹ÌÅÍ(parameter)ÀÇ ÇÁ¶óÆÛƼ, ±×¸®°í ÇÔ¼ö showResponse¸¦ Æ÷ÇÔÇÏ´Â onComplete ÇÁ¶óÆÛƼ/¸Þ¼Òµå¸¦ °¡Áö´Â °´Ã¼¸¦ Àü´ÞÇÑ´Ù´Â °ÍÀÌ´Ù.

´ç½ÅÀÌ AJAX¸¦ ºñµ¿±âÀûÀ¸·Î(asynchronous) ¼­¹ö¿¡ È£ÃâÇÒÁö¸¦ °áÁ¤Çϰí true³ª false°ªÀ¸·Î ¼ÂÆÃÇÒ¼ö ÀÖ´Â asynchronous(µðÆúÆ® °ªÀº trueÀÌ´Ù.)¿Í °°Àº ÀÌ °´Ã¼³» Á¤ÀÇÇϰí Ȱ¼ºÈ­½Ãų¼ö ÀÖ´Â ´Ù¸¥ ÇÁ¶óÆÛƼ°¡ ¸î°³ ÀÖ´Ù.

ÀÌ ÆÄ¶ó¹ÌÅÍ´Â AJAXÈ£ÃâÀ» À§ÇÑ ¿É¼ÇÀ» Á¤ÀÇÇÑ´Ù. »ùÇÿ¡¼­, ¿ì¸®´Â HTTP GET¸í·ÉÀ» ÅëÇØ ù¹øÂ° ÀÎÀÚ¿¡¼­ urlÀ» È£ÃâÇÑ´Ù. º¯¼ö pars³» Æ÷ÇÔµÈ Á¶È¸¹®ÀÚ¿­(querystring)À» Àü´ÞÇϰí Ajax.Request°´Ã¼´Â ÀÀ´äÀ» ¹Þ¾ÆµéÀÌ´Â ÀÛ¾÷À» ¸¶Ä¥¶§ showResponseÇÔ¼ö¸¦ È£ÃâÇÒ °ÍÀÌ´Ù.

´ç½ÅÀÌ ¾Æ´Â°Íó·³, XMLHttpRequest´Â HTTPÈ£ÃâÀ» ÇÏ´Â µ¿¾È ÁøÇà°úÁ¤À» º¸°íÇÑ´Ù. ÀÌ ÁøÇà°úÁ¤Àº 4°¡ÁöÀÇ ´Ü°è(Loading, Loaded, Interactive, ¶Ç´Â Complete)¸¦ ¾Ë¸±¼ö ÀÖ´Ù. ´ç½ÅÀº ÀÌ·¯ÇÑ ´Ü°èÁß¿¡¼­ Ajax.Request°´Ã¼ È£ÃâÀ» »ç¿ëÀÚÁ¤ÀÇ ÇÔ¼ö·Î ¸¸µé¼ö ÀÖ´Ù. Complete´Â °¡Àå °øÅëÀûÀÎ ´Ü°èÀÌ´Ù. ÇÔ¼ö¸¦ °´Ã¼¿¡°Ô ¾Ë¸®±â À§ÇØ, ¿ì¸® ¿¹Á¦ÀÇ onCompleteó·³ ¿äû¿É¼Ç³» onXXXXX·Î ¸í¸íµÈ ÇÁ¶óÆÛƼ/¸Þ¼Òµå¸¦ °£´ÜÈ÷ Á¦°øÇ϶ó. ´ç½ÅÀÌ Àü´ÞÇÏ´Â ÀÌ ÇÔ¼ö´Â XMLHttpRequest°´Ã¼ ÀÚü°¡ µÉ ÇϳªÀÇ ÀÎÀÚ¸¦ °¡Áø °´Ã¼¿¡ ÀÇÇØ È£ÃâµÉ°ÍÀÌ´Ù. ´ç½ÅÀº ¹Ýȯ µ¥ÀÌÅ͸¦ ¾ò±â À§ÇØ ÀÌ °´Ã¼¸¦ »ç¿ëÇÒ¼ö ÀÖ°í ¾Æ¸¶µµ È£ÃâÀÇ HTTP°á°ú Äڵ带 Æ÷ÇÔÇÒ »óÅÂ(status) ÇÁ¶óÆÛƼ¸¦ üũÇÒ°ÍÀÌ´Ù.

µÎ°³ÀÇ ´Ù¸¥ Èï¹Ì·Î¿î ¿É¼ÇÀº °á°ú¸¦ ó¸®Çϱâ À§ÇØ »ç¿ëµÉ¼ö ÀÖ´Ù. ¿ì¸®´Â AJAXÈ£ÃâÀÌ ¿¡·¯¾øÀÌ ¼öÇàµÉ¶§ È£ÃâµÉ ÇÔ¼öó·³ onSuccess¿É¼ÇÀ» ¸í½ÃÇÒ¼ö ÀÖ´Ù. onFailure¿É¼ÇÀº ¼­¹ö¿¡·¯°¡ ¹ß»ýÇÒ¶§ È£ÃâµÉ ÇÔ¼ö°¡ µÉ¼ö ÀÖ´Ù. onXXXXXÀÇ ¼±ÅÃÀûÀÎ ÇÔ¼öó·³, ÀÌ µÎ°¡Áö´Â AJAXÈ£ÃâÀÌ ¿Å±â´Â XMLHttpRequest°´Ã¼¸¦ Àü´ÞÇϵµ·Ï È£ÃâµÉ¼ö ÀÖÀ»°ÍÀÌ´Ù.

1.4.0 ¹öÀü¿¡¼­, À̺¥Æ® ÄÝ·¢ Çڵ鸵ÀÇ »õ·Î¿î ÇüŰ¡ ¼Ò°³µÇ¾ú´Ù. ¸¸¾à ´ç½ÅÀÌ AJAXÈ£ÃâÀÌ ¹ß»ýÇϴµ¥µµ ºÒ±¸ÇÏ°í Æ¯Á¤ À̺¥Æ®¸¦ À§ÇØ ¼öÇàµÇ¾î¾ß ÇÏ´Â Äڵ带 °¡Áö°í ÀÖ´Ù¸é, ´ç½ÅÀº »õ·Î¿î Ajax.Responders °´Ã¼¸¦ »ç¿ëÇÒ¼ö ÀÖ´Ù.

´ç½ÅÀÌ AJAXÈ£ÃâÀÌ ÁøÇàÁßÀ̶ó´Â ½Ã°¢Àû Ç¥½Ã¸¦ º¸¿©ÁÖ±æ ¿øÇÑ´Ù°í ÇØº¸ÀÚ. ´ç½ÅÀº µÎ°³ÀÇ Àü¿ª À̺¥Æ® Çڵ鷯¸¦ »ç¿ëÇÒ¼ö ÀÖ´Ù. Çϳª´Â ù¹øÂ° È£ÃâÀÌ ½ÃÀ۵ǾúÀ»¶§ ¾ÆÀÌÄÜÀ» º¸¿©Áִ°ÍÀÌ°í ´Ù¸¥ Çϳª´Â Àû¾îµµ Çϳª°¡ ³¡³µÀ»¶§ ¾ÆÀÌÄÜÀ» ¼û±â´Â °ÍÀÌ´Ù. ¾Æ·¡ÀÇ ¿¹Á¦¸¦ º¸ÀÚ.

<script>
	var myGlobalHandlers = {
		onCreate: function(){
			Element.show('systemWorking');
		},

		onComplete: function() {
			if(Ajax.activeRequestCount == 0){
				Element.hide('systemWorking');
			}
		}
	};

	Ajax.Responders.register(myGlobalHandlers);
</script>

<div id='systemWorking'><img src='spinner.gif'>Loading...</div>
	

¿ì¸®ÀÇ »ùÇÃÀº Èï¹Ì·Î¿î ¹æ¹ýÀ¸·Î XMLÀÀ´äÀ» ó¸®ÇÏÁö´Â ¾Ê¾Ò´Ù. ¿ì¸®´Â textarea³» XMLÀ» Áý¾î³Ö¾ú´Ù. ÀÀ´äÀÇ ÀüÇüÀûÀÎ »ç¿ë¹ýÀº XML³»ºÎ¿¡¼­ ¹Ù¶ó´Â Á¤º¸¸¦ ã°íÀÚ ÇÒ°ÍÀÌ°í ¸î¸î ÆäÀÌÁö ¿ä¼Ò³ª ÆäÀÌÁö³» HTMLÀ» ¸¸µå´Â ¸î°¡ÁöÀÇ XSLTº¯ÇüÀ» ¾÷µ¥ÀÌÆ®ÇÒ°ÍÀÌ´Ù.

Á»´õ ¿ÏÀüÇÑ ¼³¸íÀ» º¸±â À§Çؼ­, Ajax.Request ÂüÁ¶ ¿Í options ÂüÁ¶¸¦ º¸¶ó..

toc

Ajax.Updater Ŭ·¡½º »ç¿ëÇϱâ

¸¸¾à ´ç½ÅÀÌ HTML·Î ÀÌ¹Ì Æ÷¸ËÆÃµÈ Á¤º¸¸¦ ¹ÝȯÇÒ¼ö ÀÖ´Â ¼­¹ö Á¾·áÁ¡(endpoint)À» °¡Áø´Ù¸é, ¶óÀ̺귯¸®´Â ´ç½ÅÀÌ Ajax.UpdaterŬ·¡½º¸¦ »ç¿ëÇϴ°ÍÀ» Á»´õ ½±°Ô ¸¸µé¾îÁØ´Ù. À̰ÍÀ¸·Î ´ç½ÅÀº ¾î´À ¿ä¼Ò°¡ AJAXÈ£Ãâ·ÎºÎÅÍ ¹ÝȯµÈ HTMLÀ» ä¿ì´ÂÁö ¾Ë¸®°Ô µÈ´Ù. ¿¹Á¦´Â ³»°¡ ±Û·Î Ç¥ÇöÇÏ´Â °Íº¸´Ù ´ç½ÅÀ» Á»´õ ½±°Ô ÀÌÇØÇϵµ·Ï µµ¿ÍÁÙ°ÍÀÌ´Ù.

<script>
	function getHTML()
	{
		var url = 'http://yourserver/app/getSomeHTML';
		var pars = 'someParameter=ABC';
		
var myAjax = new Ajax.Updater( 'placeholder', url, { method: 'get', parameters: pars });
} </script> <input type=button value=GetHtml onclick="getHTML()"> <div id="placeholder"></div>

´ç½ÅÀÌ º¸´Â°Íó·³, ÄÚµå´Â onCompleteÇÔ¼ö¿Í »ý¼ºÀÚ¿¡ Àü´ÞµÈ ¿ä¼Ò id¸¦ Á¦¿ÜÇϰí ÀÌÀü¿¹Á¦¿¡ ºñÇØ¼­ ¸Å¿ì °£´ÜÇÏ´Ù. Ŭ¶óÀÌ¾ðÆ®¿¡¼­ ¼­¹ö ¿¡·¯µéÀ» ´Ù·ç´Â °ÍÀÌ ¾î¶»°Ô °¡´ÉÇÑÁö º¸±â À§ÇØ Äڵ带 Á¶±Ý º¯°æÇØ º¸ÀÚ.

¿ì¸®´Â È£ÃâÀ» À§ÇØ ´õ ¸¹Àº ¿É¼ÇÀ» Ãß°¡ÇÏ°í ¿¡·¯ »óȲÀ» »Ì¾Æ³»±â À§ÇØ ÇÔ¼ö¸¦ ¸í½ÃÇÑ´Ù. À̰ÍÀº onFailure¿É¼ÇÀ» »ç¿ëÇÏ¿© ¼öÇàÇÑ´Ù. ¿ì¸®´Â ¼º°øÀûÀÎ ÀÛµ¿ÀÇ °æ¿ì¿¡¸¸ Ȱ¼ºÈ­µÉ ¹­À½ÀÚ(placeholder)¸¦ ¸í½ÃÇÒ°ÍÀÌ´Ù. À̰ÍÀ» ´Þ¼ºÇϱâ À§ÇØ, ¿ì¸®´Â °£´ÜÇÑ ¿ä¼Ò id¿¡¼­ µÎ°³ÀÇ ÇÁ¶óÆÛƼ(success-¸ðµç°ÍÀÌ Á¤»óÀûÀ϶§ »ç¿ëµÇ´Â, failure-¾î¶²°ÍÀÌ ½ÇÆÐÀ϶§ »ç¿ëµÇ´Â)¸¦ °¡Áö´Â °´Ã¼·Î ù¹øÂ° ÆÄ¶ó¹ÌÅ͸¦ º¯°æÇÒ °ÍÀÌ´Ù. ¿ì¸®´Â ¿¹Á¦¿¡¼­ failure ÇÁ¶óÆÛƼ¸¦ »ç¿ëÇÏÁö ¾ÊÀ»°ÍÀ̰í, onFailure¿É¼Ç¿¡¼­ reportErrorÇÔ¼ö¸¦ »ç¿ëÇÒ°ÍÀÌ´Ù.

<script>
	function getHTML()
	{
		var url = 'http://yourserver/app/getSomeHTML';
		var pars = 'someParameter=ABC';
		
var myAjax = new Ajax.Updater( {success: 'placeholder'}, url, { method: 'get', parameters: pars, onFailure: reportError });
} function reportError(request) { alert('Sorry. There was an error.'); } </script> <input type=button value=GetHtml onclick="getHTML()"> <div id="placeholder"></div>

¸¸¾à ´ç½ÅÀÇ ¼­¹ö ·ÎÁ÷ÀÌ HTML¸¶Å©¾÷ ´ë½Å¿¡ ÀÚ¹Ù½ºÅ©¸³Æ® Äڵ带 ¹ÝȯÇÑ´Ù¸é, Ajax.Updater°´Ã¼´Â ÀÚ¹Ù½ºÅ©¸³Æ® Äڵ尡 µÉ¼ö ÀÖ´Ù. ÀÚ¹Ù½ºÅ©¸³Æ®·Î ÀÀ´äÀ» ó¸®Çϱâ À§ÇÑ °´Ã¼¸¦ ¾ò±â À§ÇØ, ´ç½ÅÀº °´Ã¼ »ý¼ºÀÚÀÇ ¸¶Áö¸· ÀÎÀÚ·Î ÇÁ¶óÆÛƼµéÀÇ ¸ñ·Ï¿¡ evalScripts: true;¸¦ °£´ÜÈ÷ Ãß°¡ÇÑ´Ù. ÇÏÁö¸¸ ¿©±â¿£ ¹®Á¦°¡ ÀÖ´Ù. ÀÌ·¯ÇÑ ½ºÅ©¸³Æ® ºí·°Àº ÆäÀÌÁöÀÇ ½ºÅ©¸³Æ®¿¡ Ãß°¡µÇÁö ¾ÊÀ»°ÍÀÌ´Ù. ¿É¼ÇÀ̸§ÀÎ evalScriptsÀÌ Á¦½ÃÇϴ°Íó·³, ½ºÅ©¸³Æ®´Â Æò°¡µÉ°ÍÀÌ´Ù. Â÷ÀÌÁ¡ÀÌ ¹«¾ùÀϱî.? ¿äûµÈ URLÀÌ ¹ÝȯÇÏ´Â °ÍÀÌ ¹«¾ùÀÎÁö ÃßÃøÇØº¸ÀÚ.

<script language="javascript" type="text/javascript">
	function sayHi(){
		alert('Hi');
	}
</script>

<input type=button value="Click Me" onclick="sayHi()">
			

ÀÌ °æ¿ì ´ç½ÅÀÌ ÀÌÀü¿¡ À̰ÍÀ» ½ÃµµÇß´Ù¸é À̰ÍÀÌ ÀÛµ¿ÇÏÁö ¾Ê´Â°ÍÀ» ¾Ë°í ÀÖÀ»°ÍÀÌ´Ù. ÀÌÀ¯´Â ½ºÅ©¸³Æ® ºí·°Àº Æò°¡µÉ°ÍÀÌ°í Æò°¡µÈ ½ºÅ©¸³Æ®´Â sayHi ¶ó´Â À̸§ÀÇ ÇÔ¼ö¸¦ »ý¼ºÇÏÁö ¾ÊÀ»°ÍÀÌ´Ù. À̰ÍÀº ¾Æ¹«°Íµµ ÇÏÁö ¾ÊÀ»°ÍÀÌ´Ù. ÀÌ ÇÔ¼ö¸¦ »ý¼ºÇϱâ À§ÇØ, ¿ì¸®´Â ÇÔ¼ö¸¦ »ý¼ºÇϱâ À§ÇØ º¯°æÇÒ Çʿ䰡 ÀÖ´Ù. ¾Æ·¡¸¦ º¸¶ó.

<script language="javascript" type="text/javascript">
	
sayHi = function(){ alert('Hi'); };
</script> <input type=button value="Click Me" onclick="sayHi()">

ÀÌÀü ¿¹Á¦¿¡¼­, ¿ì¸®´Â º¯¼ö¸¦ ¼±¾ðÇϱâ À§ÇØ var Ű¿öµå¸¦ »ç¿ëÇÏÁö ¾Ê¾Ò´Ù. ±×·¸°Ô ÇÏ´Â °ÍÀº ½ºÅ©¸³Æ® ºí·°¿¡ Áö¿ªÈ­µÉ ÇÔ¼ö °´Ã¼¸¦ »ý¼ºÇÒ°ÍÀÌ´Ù. var Ű¿öµå ¾øÀÌ ÇÔ¼ö °´Ã¼´Â window¹üÀ§¿¡¼­ ÀÛµ¿ÇÑ´Ù.

Á»´õ »ó¼¼ÇÑ complete¼³¸íÀ» À§Çؼ­´Â, Ajax.Request ÂüÁ¶¹®¼­¿Í Ajax.options ÂüÁ¶¹®¼­¸¦ º¸¶ó.

toc

¿­°Å(Enumerating)...

¿ì¸®´Â ·çÇÁ(loop)¿¡ Ä£¼÷ÇÏ´Ù. ´ç½ÅÀÌ ¾Ë´Ù½ÃÇÇ, ¹è¿­ ÀÚü¸¦ »ý¼ºÇÏ°í °°Àº Á¾·ùÀÇ ¿ä¼Ò·Î ä¿î´Ù. ·çÇÁ Á¦¾î±¸Á¶(À̸¦ Å׸é, foreach, while, repeat µîµî)À» »ý¼ºÇÏ°í ¼ýÀÚ·Î µÈ À妽º¸¦ ÅëÇØ ¼øÂ÷ÀûÀ¸·Î °¢°¢ÀÇ ¿ä¼Ò¿¡ Á¢±ÙÇÏ°í ±× ¿ä¼Ò·Î ÀÛ¾÷À» ¼öÇàÇÑ´Ù.

´ç½ÅÀÌ À̰Ϳ¡ ´ëÇØ »ý°¢ÇÒ¶§, ¾ðÁ¦³ª ´ç½ÅÀº Äڵ忡 ¹è¿­À» °¡Áö°í ·çÇÁ³» ¹è¿­À» »ç¿ëÇÒ°ÍÀ̶ó´Â°ÍÀ» ÀǹÌÇÑ´Ù. ÀÌ·¯ÇÑ ¹Ýº¹À» ´Ù·ç±â À§ÇØ Á»´õ ¸¹Àº ±â´ÉÀ» °¡Áø ¹è¿­ °´Ã¼°¡ ÀÖ´Ù¸é ÁÁÁö ¾Ê°Ú´Â°¡.? ±×·¸´Ù. ¸¹Àº ÇÁ·Î±×·¡¹Ö ¾ð¾î´Â ¹è¿­À̳ª À¯»çÇÑ ±¸Á¶(collection°ú list¿Í °°Àº)¿¡¼­ ÀÌ·¯ÇÑ ±â´ÉÀ» Á¦°øÇÑ´Ù.

prototype.js´Â ¿ì¸®¿¡°Ô ¹Ýº¹°¡´ÉÇÑ µ¥ÀÌÅ͸¦ ´Ù·ê¶§ »ç¿ëÇϵµ·Ï ±¸ÇöµÈ Enumerable °´Ã¼¸¦ Á¦°øÇÑ´Ù. prototype.js ¶óÀ̺귯¸®´Â ´õ ³ª¾Æ°¡ EnumerableÀÇ ¸ðµç ¸Þ¼Òµå·Î Array Ŭ·¡½º¸¦ È®ÀåÇÑ´Ù

toc

·çÇÁ, ·çºñ-½ºÅ¸ÀÏ

Ç¥ÁØ ÀÚ¹Ù½ºÅ©¸³Æ®¿¡¼­, ´ç½ÅÀÌ ¹è¿­ÀÇ ¿ä¼Ò¸¦ ¼øÂ÷ÀûÀ¸·Î Ç¥½ÃÇÏ±æ ¿øÇÑ´Ù¸é, ´ç½ÅÀº ´ÙÀ½Ã³·³ ÀÛ¼ºÇÒ¼ö ÀÖ´Ù.

<script>
	function showList(){
		var simpsons = ['Homer', 'Marge', 'Lisa', 'Bart', 'Meg'];
for(i=0;i<simpsons.length;i++){ alert(simpsons[i]); }
} </script> <input type="button" value="Show List" onclick="showList();" >

prototype.js¸¦ »ç¿ëÇϸé, ´ÙÀ½°ú °°ÀÌ ´Ù½Ã ÀÛ¼ºÇÒ¼ö ÀÖ´Ù.

	function showList(){
		var simpsons = ['Homer', 'Marge', 'Lisa', 'Bart', 'Meg'];
simpsons.each( function(familyMember){ alert(familyMember); });
}

´ç½ÅÀº ƯÀÌÇÑ ¹®¹ýÀ¸·Î º°·Î ÁÁÁö¾Ê´Ù°í »ý°¢ÇÒÁöµµ ¸ð¸¥´Ù. À§ ¿¹Á¦¿¡¼­, ¾û¸ÁÀ¸·Î ¸¸µå´Â °ÍÀº ¾Æ¹«°Íµµ ¾ø´Ù.

each ¸Þ¼Òµå¿¡ ´ëÇÑ ÀÎÀÚó·³ Àü´ÞµÇ´Â ÀÌ ÇÔ¼ö´Â º¸¾Ò´Â°¡.? iterator ÇÔ¼öó·³ À̰ÍÀ» ÂüÁ¶Çغ¸ÀÚ.

toc

½ºÅ×·ÎÀ̵å(steroids)¿¡¼­ ´ç½ÅÀÇ ¹è¿­

À§¿¡¼­ ¾ð±ÞµÈ°Íó·³, À̰ÍÀº °°Àº ÇÁ¶óÆÛƼ¿Í ¸Þ¼Òµå¸¦ °¡Áö´Â ¹è¿­³» ¸ðµç ¿ä¼Ò¸¦ À§ÇØ °øÅëÀÌ´Ù. ¿ì¸®ÀÇ »õ·Î¿î ¹è¿­À» °¡Áö°í iteratorÇÔ¼öÀÇ ÀåÁ¡À» °¡Áú¼ö ÀÖ´Â ¹æ¹ýÀ» º¸ÀÚ.

¹®¹ý¿¡ µû¸£´Â ¿ä¼Ò¸¦ ã¾Æ¶ó.

<script>
	function findEmployeeById(emp_id){
		var listBox = $('lstEmployees')
		var options = listBox.getElementsByTagName('option');
		options = $A(options);
		var opt = options.find( function(employee){
			return (employee.value == emp_id);
		});
		alert(opt.innerHTML); //displays the employee name
	}
</script>

<select id="lstEmployees" size="10" >
	<option value="5">Buchanan, Steven</option>
	<option value="8">Callahan, Laura</option>
	<option value="1">Davolio, Nancy</option>
</select>

<input type="button" value="Find Laura" onclick="findEmployeeById(8);" > 
			

¹è¿­¿¡¼­ Ç׸ñÀ» °É·¯³»´Â ¹æ¹ýÀ» º¸ÀÚ. ±×¸®°í³ª¼­ °¢°¢ÀÇ ¿ä¼Ò·ÎºÎÅÍ ¸É¹ö¸¦ °¡Á®¿Â´Ù.

<script>
	function showLocalLinks(paragraph){
		paragraph = $(paragraph);
		var links = $A(paragraph.getElementsByTagName('a'));
		//find links that do not start with 'http'
		var localLinks = links.findAll( function(link){
			var start = link.href.substring(0,4);
			return start !='http';
		});
		//now the link texts
		var texts = localLinks.pluck('innerHTML');
		//get them in a single string
		var result = texts.inspect();
		alert(result);
	}

</script>
<p id="someText">
	This <a href="http://othersite.com/page.html">text</a> has 
	a <a href="#localAnchor">lot</a> of 
	<a href="#otherAnchor">links</a>. Some are 
	<a href="http://wherever.com/page.html">external</a>
	and some are <a href="#someAnchor">local</a>
</p>
<input type=button value="Find Local Links" onclick="showLocalLinks('someText')">
			

À̰ÍÀº ÀÌ ¹®¹ý¿¡ ¿ÏÀüÈ÷ ºüÁöµµ·Ï Çϱâ À§ÇÑ ¸î°¡Áö ¿¹Á¦¸¦ °¡Áø´Ù. »ç¿ë°¡´ÉÇÑ ¸ðµç ÇÔ¼ö¸¦ À§ÇØ Enumerable and Array ÂüÁ¶¹®¼­¸¦ º¸¶ó.

toc

³»°¡ °­·ÂÇÏ°Ô ÃßõÇϴ åµé.

´ÙÀ½ÀÇ Ã¥µéÀº AJAX¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µé±â À§ÇØ ¿ä±¸µÇ´Â »õ·Î¿î ½ºÅ³À» ¹è¿ì´Âµ¥ ¸¹Àº µµ¿òÀ» ÁÖ¾ú°í ÀÌ¹Ì ¾Ë°í ÀÖ´ø ½ºÅ³À» Á»´õ źźÇÏ°Ô ¸¸µé¾îÁÖ¾ú´Ù. ³ª´Â ÁÁÀº Ã¥ÀÌ ÃæºÐÈ÷ ±ÝÀûÀûÀÎ °¡Ä¡¸¦ ÇÏ°í ¿À·£½Ã°£µ¿¾È °¡Ä¡¸¦ À̾´Ù°í »ý°¢ÇÑ´Ù.

toc


prototype.js ÂüÁ¶

JavaScript Ŭ·¡½º¿¡ ´ëÇÑ È®Àå

prototype.js¶óÀ̺귯¸®¿¡ ±â´ÉÀ» Ãß°¡Çϱâ À§ÇÑ ¹æ¹ýÁß Çϳª´Â ÇöÀç Á¸ÀçÇÏ´Â JavaScriptŬ·¡½º¸¦ È®ÀåÇÏ´Â °ÍÀÌ´Ù.

toc

Object Ŭ·¡½º¸¦ À§ÇÑ È®Àå

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
extend(destination, source)staticdestination: °´Ã¼, source: °´Ã¼ source¿¡¼­ destinationÀ¸·Î ¸ðµç ÇÁ¶óÆÛƼ¿Í ¸Þ¼Òµå¸¦ º¹»çÇÏ¿© »ó¼ÓÀ» ±¸ÇöÇϱâ À§ÇÑ ¹æ¹ýÀ» Á¦°ø
inspect(targetObj)statictargetObj: °´Ã¼ targetObjÀÇ »ç¶÷ÀÌ ÀÐÀ»¼ö ÀÖ´Â ¹®ÀÚ¿­ Ç¥ÇöÀ¸·Î ¹Ýȯ. ÁÖ¾îÁø °´Ã¼°¡ inspect ÀνºÅϽº ¸Þ¼Òµå¸¦ Á¤ÀÇÇÏÁö ¾Ê´Â´Ù¸é, toString ÀÇ °ªÀ» ¹Ýȯ

toc

Number Ŭ·¡½º¸¦ À§ÇÑ È®Àå

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
toColorPart()instance(none) ¼ýÀÚÀÇ 16Áø¹ý Ç¥ÇöÀ» ¹Ýȯ. »ö»óÀÇ RGBÄÄÆ÷³ÍÆ®¸¦ HTMLÇ¥ÇöÀ¸·Î º¯È¯ÇÒ¶§ À¯¿ë
succ()instance(none) ´ÙÀ½ ¼ýÀÚ¸¦ ¹Ýȯ. ÀÌ ÇÔ¼ö´Â ¹Ýº¹À» Æ÷ÇÔÇÏ´Â ½Ã³ª¸®¿À¿¡¼­ »ç¿ëµÈ´Ù.
times(iterator)instanceiterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÀÎÀÚ value¿Í index¸¦ ¹Ýº¹ÀûÀ¸·Î Àü´ÞÇÏ´Â iterator ÇÔ¼ö¸¦ È£ÃâÇÏ´Â °ÍÀº iteration°ú ÇöÀç index³» ÇöÀç °ªÀ» °¢°¢ Æ÷ÇÔÇÑ´Ù.

´ÙÀ½ÀÇ ¿¹Á¦´Â 0¿¡¼­ 9±îÁöÀÇ ¸Þ½ÃÁö ¹Ú½º¸¦ Ç¥½ÃÇÒ°ÍÀÌ´Ù.

<script>
	function demoTimes(){
		var n = 10;
		n.times(function(index){
			alert(index);
		});
		/***************************
		 * you could have also used: 
		 *           (10).times( .... ); 
		 ***************************/
	}

</script>

<input type=button value="Test Number.times()" onclick="demoTimes()">
			

toc

Function Ŭ·¡½º¸¦ À§ÇÑ È®Àå

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
bind(object)instanceobject: ¸Þ¼Òµå¸¦ ¼ÒÀ¯ÇÏ´Â °´Ã¼ ÇÔ¼ö(=¸Þ¼Òµå) ¼ÒÀ¯ÀÚ °´Ã¼·Î ¹Ì¸® ¹­´Â ÇÔ¼öÀÇ ÀνºÅϽº¸¦ ¹Ýȯ. ¹ÝȯµÈ ÇÔ¼ö´Â ¿ø·¡ÀÇ °Í°ú °°Àº ÀÎÀÚ¸¦ °¡Áú°ÍÀÌ´Ù.
bindAsEventListener(object)instanceobject: ¸Þ¼Òµå¸¦ ¼ÒÀ¯ÇÏ´Â °´Ã¼ À¯ÇÏ´Â °´Ã¼ ÇÔ¼ö(=¸Þ¼Òµå) ¼ÒÀ¯ÀÚ °´Ã¼·Î ¹Ì¸® ¹­´Â ÇÔ¼öÀÇ ÀνºÅϽº¸¦ ¹Ýȯ. ¹ÝȯµÈ ÇÔ¼ö´Â À̰ÍÀÇ ÀÎÀÚ·Î ÇöÀç À̺¥Æ® °´Ã¼¸¦ °¡Áú°ÍÀÌ´Ù.

½ÇÁ¦·Î ÀÌ È®ÀåÁß Çϳª¸¦ º¸ÀÚ.

<input type=checkbox id=myChk value=1> Test?
<script>
	//declaring the class
	var CheckboxWatcher = Class.create();

	//defining the rest of the class implementation
	CheckboxWatcher.prototype = {

	   initialize: function(chkBox, message) {
			this.chkBox = $(chkBox);
			this.message = message;
			//assigning our method to the event
			
this.chkBox.onclick = this.showMessage.bindAsEventListener(this);
}, showMessage: function(evt) { alert(this.message + ' (' + evt.type + ')'); } }; var watcher = new CheckboxWatcher('myChk', 'Changed'); </script>

toc

String Ŭ·¡½º¸¦ À§ÇÑ È®Àå

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
stripTags()instance(none) HTMLÀ̳ª XMLűװ¡ »èÁ¦µÈ ¹®ÀÚ¿­À» ¹Ýȯ
stripScripts()instance(none) »èÁ¦µÈ <script /> ºí·°À» °¡Áø ¹®ÀÚ¿­À» ¹Ýȯ
escapeHTML()instance(none) HTML¸¶Å©¾÷ ¹®ÀÚµéÀÌ escapedµÈ ¹®ÀÚ¿­ ¹Ýȯ
unescapeHTML()instance(none) escapeHTML()ÀÇ ¹Ý´ë
extractScripts()instance(none) ¹®ÀÚ¿­³»¿¡¼­ ¹ß°ßµÇ´Â ¸ðµç <script />ºí·°À» Æ÷ÇÔÇÏ´Â Array°´Ã¼ ¹Ýȯ
evalScripts()instance(none) ¹®ÀÚ¿­³»¿¡¼­ ¹ß°ßµÇ´Â °¢°¢ÀÇ <script />ºí·°À» Æò°¡Çϱâ
toQueryParams()instance(none) Äõ¸®¹®ÀÚ¿­(querystring)À» ÆÄ¶ó¹ÌÅÍ À̸§¿¡ ÀÇÇØ À妽ºÈ­µÇ´Â °áÇÕµÈ Array·Î Âɰ³±â
parseQuery()instance(none) toQueryParams()¿Í °°À½.
toArray()instance(none) ¹®ÀÚ¿­À» À̰ÍÀÇ ¹®ÀÚµéÀÇ Array·Î Âɰ³±â
camelize()instance(none) -(ÇÏÀÌÇÂ)À¸·Î ºÐ¸®µÈ ¹®ÀÚ¿­À» camelCaseStringÀ¸·Î º¯È¯Çϱâ. ÀÌ ÇÔ¼ö´Â ¿¹¸¦ µé¸é, ÇÁ¶óÆÛƼ ½ºÅ¸ÀÏÀ» ´Ù·ç´Â Äڵ带 ÀÛ¼ºÇÒ¶§ À¯¿ëÇÏ´Ù.

toc

Array Ŭ·¡½º¸¦ À§ÇÑ È®Àå

½ÃÀÛÇϱâ À§ÇØ, Array´Â Enumerable¸¦ È®ÀåÇÑ´Ù. ±×·¡¼­ Enumerable°´Ã¼³»¿¡ Á¤ÀǵǴ ¸ðµç Æí¸®ÇÑ ¸Þ¼Òµå´Â »ç¿ë°¡´ÉÇÏ´Ù. À̰Ϳܿ¡µµ, ¾Æ·¡ÀÇ ¸Þ¼ÒµåµéÀÌ ±¸ÇöµÇ¾ú´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
clear()instance(none) ¹è¿­À» ºñ¿ì°í ÀÚü¸¦ ¹ÝȯÇÑ´Ù.
compact()instance(none) null À̰ųª undefinedÀÎ ¿ä¼Ò¸¦ Á¦¿ÜÇÏ°í ¹è¿­À» ¹ÝȯÇÑ´Ù. ÀÌ ¸Þ¼Òµå´Â ¹è¿­ÀÚü¸¦ º¯°æÇÏÁö ¾Ê´Â´Ù.
first()instance(none) ¹è¿­ÀÇ Ã¹¹øÂ° ¿ä¼Ò¸¦ ¹ÝȯÇÑ´Ù.
flatten()instance(none) ±âº¹ÀÌ ¾ø°í, 1Â÷¿øÀÇ ¹è¿­À» ¹ÝȯÇÑ´Ù. ÀÌ ÇÔ¼ö´Â ¹è¿­ÀÌ°í ¹ÝȯµÈ ¹è¿­³» ¿ä¼Ò¸¦ Æ÷ÇÔÇÏ´Â ¹è¿­ÀÇ °¢ ¿ä¼Ò¸¦ ãÀ½À¸·Î½á ¼öÇàµÈ´Ù.
indexOf(value)instance value: ´ç½ÅÀÌ Ã£´Â °Í ¹è¿­¿¡¼­ ã¾ÆÁø´Ù¸é ÁÖ¾îÁø valueÀÇ 0ºÎÅÍ ½ÃÀÛÇÏ´Â À妽ºÀÇ À§Ä¡¸¦ ¹Ýȯ. valueÀÌ ¾ø´Ù¸é -1À» ¹Ýȯ
inspect()instance(none) ¿ä¼Ò¸¦ °¡Áø ¹è¿­ÀÇ Àß Æ÷¸ËÆÃµÈ ¹®ÀÚ¿­ Ç¥½Ã¸¦ ¹ÝȯÇϱâ À§ÇØ º¯°æ
last()instance(none) ¹è¿­ÀÇ ¸¶Áö¸· ¿ä¼Ò¸¦ ¹ÝȯÇÑ´Ù.
reverse([applyToSelf])instance applyToSelf: ¹è¿­ ÀÚü°¡ ¹ÝÀüµÇ´ÂÁö Ç¥½Ã ¿ª¼ø¼­·Î ¹è¿­À» ¹Ýȯ. ÀÎÀÚ°¡ ÁÖ¾îÁöÁö ¾Ê°Å³ª ÀÎÀÚ°¡ true¶ó¸é, ¹è¿­ÀÚü´Â ¹ÝÀüµÉ°ÍÀÌ´Ù. ±×·¸Áö ¾ÊÀ¸¸é º¯°æµÇÁö ¾Ê°í ³²´Â´Ù.
shift()instance(none) ù¹øÂ° ¿ä¼Ò¸¦ ¹ÝȯÇÏ°í ¹è¿­·ÎºÎÅÍ À̰ÍÀ» Á¦°ÅÇÑ´Ù. ¹è¿­ÀÇ ±æÀÌ´Â 1 °¨¼ÒÇÑ´Ù.
without(value1 [, value2 [, .. valueN]])instance value1 ... valueN: ¹è¿­³» Á¸ÀçÇÑ´Ù¸é Á¦¿ÜµÉ °ª ÀÎÀÚ·Î ÁÖ¾îÁø ¿ä¼Ò¸¦ Á¦¿ÜÇÑ ¹è¿­À» ¹Ýȯ

toc

document DOM °´Ã¼¸¦ À§ÇÑ È®Àå

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
getElementsByClassName(className [, parentElement])instance className: ¿ä¼Ò¿Í ¿¬°üµÈ CSSŬ·¡½º À̸§, parentElement: °´Ã¼ ¶Ç´Â °¡Á®¿Ã ¿ä¼Ò¸¦ Æ÷ÇÔÇÏ´Â ¿ä¼ÒÀÇ id. ÁÖ¾îÁø CSSŬ·¡½º¸í°ú ¿¬°üµÈ ¸ðµç ¿ä¼Ò¸¦ ¹Ýȯ. parentElement id°¡ ÁÖ¾îÁ³´Ù¸é, Àüü ¹®¼­°¡ °Ë»öµÉ°ÍÀÌ´Ù.

toc

Event °´Ã¼¸¦ À§ÇÑ È®Àå

ÇÁ¶óÆÛƼŸÀÔ»ó¼¼¼³¸í
KEY_BACKSPACENumber 8: µÇµ¹¸®±â(<-) ۸¦ À§ÇÑ »ó¼ö ÄÚµå.
KEY_TABNumber 9: ÅÇ۸¦ À§ÇÑ »ó¼öÄÚµå
KEY_RETURNNumber 13: ¸®ÅÏ۸¦ À§ÇÑ »ó¼öÄÚµå
KEY_ESCNumber 27: Esc۸¦ À§ÇÑ »ó¼öÄÚµå
KEY_LEFTNumber 37: ¿ÞÂÊ È­»ìÇ¥ ۸¦ À§ÇÑ »ó¼öÄÚµå
KEY_UPNumber 38: À§ÂÊ È­»ìÇ¥ ۸¦ À§ÇÑ »ó¼öÄÚµå
KEY_RIGHTNumber 39: ¿À¸¥ÂÊ È­»ìÇ¥ ۸¦ À§ÇÑ »ó¼öÄÚµå
KEY_DOWNNumber 40: ¾Æ·¡ÂÊ È­»ìÇ¥ ۸¦ À§ÇÑ »ó¼öÄÚµå
KEY_DELETENumber 46: Delete۸¦ À§ÇÑ »ó¼öÄÚµå
observers:Array ij½ÃµÈ °üÂûÀÚ(observers)ÀÇ ¸ñ·Ï. »ó¼¼ÇÑ °´Ã¼ÀÇ ³»ºÎ±¸ÇöÀÇ ÀϺÎ

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
element(event)static event: À̺¥Æ® °´Ã¼ À̺¥Æ®¸¦ ÀÏÀ¸Å°´Â ¿ä¼Ò¸¦ ¹Ýȯ
isLeftClick(event)static event: À̺¥Æ® °´Ã¼ ¸¶¿ì½º ¿ÞÂÊ ¹öưÀ» Ŭ¸¯½Ã true°ª ¹Ýȯ
pointerX(event)static event: À̺¥Æ® °´Ã¼ ÆäÀÌÁö¿¡¼­ ¸¶¿ì½º Æ÷ÀÎÅÍÀÇ xÃø ÁÂÇ¥°ª ¹Ýȯ
pointerY(event)static event: À̺¥Æ® °´Ã¼ ÆäÀÌÁö¿¡¼­ ¸¶¿ì½º Æ÷ÀÎÅÍÀÇ yÃø ÁÂÇ¥°ª ¹Ýȯ
stop(event)static event: À̺¥Æ® °´Ã¼ À̺¥Æ®ÀÇ µðÆúÆ® ÇàÀ§¸¦ Ãë¼ÒÇϰí À§ÀÓÀ» ¿¬±âÇϱâ À§ÇØ ÀÌ ÇÔ¼ö¸¦ »ç¿ë
findElement(event, tagName)static event: À̺¥Æ® °´Ã¼, tagName: ¿øÇϴ ű׸í DOMÆ®¸® À§ÂÊÀ¸·Î °¡·ÎÁö¸¥´Ù. ÁÖ¾îÁø ű׸íÀ» °¡Áø ù¹øÂ° ¿ä¼Ò¸¦ °Ë»öÇÑ´Ù. À̺¥Æ®¸¦ ¹ß»ý½ÃŰ´Â ¿ä¼Ò·ÎºÎÅÍ ½ÃÀÛÇÑ´Ù.
observe(element, name, observer, useCapture)static element: °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, name: À̺¥Æ® ¸í (like 'click', 'load', etc), observer: À̺¥Æ®¸¦ ´Ù·ç´Â ÇÔ¼ö, useCapture: true¶ó¸é, capture³» À̺¥Æ®¸¦ ´Ù·ç°í false¶ó¸é bubbling ³» À̺¥Æ®¸¦ ´Ù·é´Ù. À̺¥Æ®¸¦ À§ÇÑ À̺¥Æ® Çڵ鷯 ÇÔ¼ö¸¦ Ãß°¡
stopObserving(element, name, observer, useCapture)static element: °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, name: À̺¥Æ® ¸í ('click' ó·³), observer: À̺¥Æ®¸¦ ´Ù·ç´Â ÇÔ¼ö, useCapture: true¶ó¸é capture³» À̺¥Æ®¸¦ ´Ù·ç°í, false¶ó¸é bubbling³»¿¡¼­ ´Ù·é´Ù. À̺¥Æ®·ÎºÎÅÍ À̺¥Æ® Çڵ鷯¸¦ Á¦°Å
_observeAndCache(element, name, observer, useCapture)static   private¸Þ¼Òµå, À̰Ϳ¡ ´ëÇØ °ÆÁ¤ÇÏÁö¸»¶ó.
unloadCache()static (none) private¸Þ¼Òµå, À̰Ϳ¡ ´ëÇØ °ÆÁ¤ÇÏÁö¸»¶ó. ¸Þ¸ð¸®·ÎºÎÅÍ Ä³½ÃµÈ ¸ðµç °üÂûÀÚ(observer)¸¦ Áö¿î´Ù.

window°´Ã¼ÀÇ À̺¥Æ®¸¦ ·Î±×Çϱâ À§ÇÑ À̺¥Æ® Çڵ鷯¸¦ Ãß°¡ÇÏ´Â °´Ã¼¸¦ »ç¿ëÇÏ´Â ¹æ¹ýÀ» º¸ÀÚ.

<script>
	Event.observe(window, 'load', showMessage, false);

	function showMessage() {
	  alert('Page loaded.');
	}
</script>			
			

toc

prototype.js¿¡ »õ·Ó°Ô Á¤ÀÇµÈ °´Ã¼¿Í Ŭ·¡½º

¶óÀ̺귯¸®°¡ ´ç½ÅÀ» µ½´Â ´Ù¸¥ ¹æ¹ýÀº °´Ã¼ÁöÇâ µðÀÚÀΰú °øÅëÀûÀÎ ±â´ÉÀ» À§ÇÑ Áö¿ø ¸ðµÎ¸¦ ±¸ÇöÇÏ´Â ¸¹Àº °´Ã¼¸¦ Á¦°øÇÏ´Â °ÍÀÌ´Ù.

toc

PeriodicalExecuter °´Ã¼

ÀÌ °´Ã¼´Â ÁÖ¾îÁø ÇÔ¼ö¸¦ ÁÖ¾îÁø ½Ã°£°£°ÝÀ¸·Î ¹Ýº¹ÀûÀ¸·Î È£ÃâÇϱâ À§ÇÑ ·ÎÁ÷À» Á¦°øÇÑ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](callback, interval)constructorcallback: ÆÄ¶ó¹ÌÅÍ ¼º°ÝÀÌ ¾Æ´Ñ ÇÔ¼ö, interval: ÃÊ´ÜÀ§ ½Ã°£°£°Ý ÇÔ¼ö¸¦ ¹Ýº¹ÀûÀ¸·Î È£ÃâÇÒ ÀÌ °´Ã¼ÀÇ ÇϳªÀÇ ÀνºÅϽº¸¦ »ý¼º

ÇÁ¶óÆÛƼŸÀÔ»ó¼¼¼³¸í
callbackFunction()È£ÃâµÇ±â À§ÇÑ ÇÔ¼ö. ÀÌ ÇÔ¼ö·Î Àü´ÞµÉ ÆÄ¶ó¹ÌÅÍ´Â ¾ø´Ù.
frequencyNumber À̰ÍÀº ¼öÃʳ» °£°ÝÀ¸·Î ½ÇÁúÀûÀ¸·Î ÀÛ¿ë
currentlyExecutingBoolean¸¸¾à ÇÔ¼ö È£ÃâÀÌ ÁøÇàÁßÀ̶ó¸é Ç¥½Ã

toc

Prototype °´Ã¼

Prototype °´Ã¼´Â »ç¿ëµÇ´Â ¶óÀ̺귯¸®ÀÇ ¹öÀüÀ» ¸í½ÃÇÏ´Â °Íº¸´Ù Áß¿äÇÑ ¿ªÈ°À» °¡ÁöÁö ¾Ê´Â´Ù.

ÇÁ¶óÆÛƼŸÀÔ»ó¼¼¼³¸í
VersionString ¶óÀ̺귯¸®ÀÇ ¹öÀü
emptyFunctionFunction() ºñ¾îÀÖ´Â(empty) ÇÔ¼ö °´Ã¼
KFunction(obj)ÁÖ¾îÁø ÆÄ¶ó¹ÌÅ͸¦ µÇµ¹¸®´Â ÇÔ¼ö °´Ã¼
ScriptFragmentString ½ºÅ©¸³Æ®¸¦ È®ÀÎÇÏ´Â Á¤±Ô½Ä Ç¥Çö

toc

Enumerable °´Ã¼

Enumerable °´Ã¼´Â listÇüÅÂÀÇ ±¸Á¶³»¿¡¼­ Ç׸ñÀ» ¹Ýº¹Çϱâ À§ÇÑ Á»´õ ¸ÚÁø Äڵ带 ÀÛ¼ºÇÏ´Â °ÍÀ» Çã¿ëÇÑ´Ù.

¸¹Àº °´Ã¼µéÀº À¯¿ëÇÑ ÀÎÅÍÆäÀ̽º¿¡ ¿µÇâÀ» ³¢Ä¡±â À§ÇØ Enumerable À» È®ÀåÇÑ´Ù.

ÇÁ¶óÆÛƼŸÀÔ»ó¼¼¼³¸í
VersionString¶óÀ̺귯¸®ÀÇ ¹öÀü

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
each(iterator)instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÁÖ¾îÁø iteratorÇÔ¼ö¸¦ È£ÃâÇÏ´Â °ÍÀº ù¹øÂ° ÀÎÀÚ³» ¸ñ·ÏÀ¸·Î °¢°¢ÀÇ ¿ä¼Ò¿Í µÎ¹øÂ° ÀÎÀÚ³» ¿ä¼ÒÀÇ À妽º Àü´ÞÇÑ´Ù.
all([iterator])instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÀÌ ÇÔ¼ö´Â ÁÖ¾îÁø ÇÔ¼ö¸¦ »ç¿ëÇÏ¿© °ªµéÀÇ Àüü ÁýÇÕÀ» Å×½ºÆ®Çϱâ À§ÇÑ ¹æ¹ýÀÌ´Ù. iterator ÇÔ¼ö°¡ ¾î¶² ¿ä¼Ò¸¦ À§ÇØ false³ª nullÀ» ¹ÝȯÇÑ´Ù¸é, allÀº false¸¦ ¹ÝȯÇÒ°ÍÀÌ´Ù. ±×·¸Áö ¾Ê´Ù¸é true¸¦ ¹ÝȯÇÒ°ÍÀÌ´Ù. iterator°¡ ÁÖ¾îÁöÁö ¾Ê´Â´Ù¸é, ¿ä¼Ò ÀÚü°¡ false ³ª nullÀÌ ¾Æ´ÑÁö Å×½ºÆ®ÇÒ°ÍÀÌ´Ù. ´ç½ÅÀº "¸ðµç ¿ä¼Ò°¡ false°¡ ¾Æ´ÑÁö üũÇÑ´Ù"¿Í °°ÀÌ À̰ÍÀ» ÀÐÀ»¼ö ÀÖ´Ù.
any(iterator)instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼(¼±ÅûçÇ×) ÀÌ ÇÔ¼ö´Â ÁÖ¾îÁø ÇÔ¼ö¸¦ »ç¿ëÇÏ¿© °ªµéÀÇ Àüü ÁýÇÕÀ» Å×½ºÆ®Çϱâ À§ÇÑ ¹æ¹ýÀÌ´Ù. iteratorÇÔ¼ö°¡ ¾î¶² ¿ä¼Ò¸¦ À§ÇØ false ³ª nullÀ» ¹ÝȯÇÏÁö ¾Ê´Â´Ù¸é any´Â true¸¦ ¹ÝȯÇÒ°ÍÀÌ´Ù. ±×·¸Áö ¾Ê´Ù¸é false¸¦ ¹ÝȯÇÒ°ÍÀÌ´Ù. iterator°¡ ÁÖ¾îÁöÁö ¾Ê´Â´Ù¸é, ¿ä¼Ò ÀÚü°¡ false ³ª nullÀÌ ¾Æ´ÑÁö Å×½ºÆ®ÇÒ°ÍÀÌ´Ù. ´ç½ÅÀº "¾î´À ¿ä¼Ò°¡ false°¡ ¾Æ´ÑÁö üũÇÑ´Ù"¿Í °°ÀÌ À̰ÍÀ» ÀÐÀ»¼ö ÀÖ´Ù.
collect(iterator)instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÁýÇÕ³» °¢°¢ÀÇ ¿ä¼Ò¸¦ À§ÇÑ iteratorÇÔ¼ö¸¦ È£ÃâÇϰí Array·Î °¢°¢ÀÇ °á°ú¸¦ ¹ÝȯÇÑ´Ù. ÁýÇÕ³» °¢°¢ÀÇ ¿ä¼Ò¸¦ À§ÇÑ ÇϳªÀÇ °á°ú ¿ä¼Ò´Â °°Àº ¼ø¼­ÀÌ´Ù.
detect(iterator)instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÁýÇÕ³» °¢°¢ÀÇ ¿ä¼Ò¸¦ À§ÇÑ iteratorÇÔ¼ö¸¦ È£ÃâÇϰí true¸¦ ¹ÝȯÇÏ´Â iteratorÇÔ¼ö¸¦ ¾ß±âÇϴ ù¹øÂ° ¿ä¼Ò¸¦ ¹ÝȯÇÑ´Ù. true¸¦ ¹ÝȯÇÏ´Â ¿ä¼Ò°¡ ¾ø´Ù¸é, detect´Â nullÀ» ¹ÝȯÇÑ´Ù.
entries()instance (none) toArray()¿Í °°´Ù.
find(iterator)instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ detect()¿Í °°´Ù.
findAll(iterator)instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÁýÇÕ³» °¢°¢ÀÇ ¿ä¼Ò¸¦ À§ÇÑ iteratorÇÔ¼ö¸¦ È£ÃâÇϰí true·Î ÇØ¼®µÇ´Â °ªÀ» ¹ÝȯÇÏ´Â iteratorÇÔ¼ö¸¦ ¾ß±âÇÏ´Â ¸ðµç ¿ä¼Ò¸¦ °¡Áø ArrayÀ» ¹ÝȯÇÑ´Ù. ÀÌ ÇÔ¼ö´Â reject()¿Í´Â ¹Ý´ëÀÇ ÇÔ¼öÀÌ´Ù.
grep(pattern [, iterator])instance pattern: ¿ä¼Ò¸¦ ÀÏÄ¡½Ã۱â À§ÇØ »ç¿ëµÇ´Â RegExp°´Ã¼, iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÁýÇÕ³» °¢°¢ÀÇ ¿ä¼ÒÀÇ ¹®ÀÚ¿­ °ªÀ» pattern Á¤±ÔÇ¥Çö½Ä¿¡ ´ëÇØ Å×½ºÆ®ÇÑ´Ù. ÇÔ¼ö´Â Á¤±ÔÇ¥Çö½Ä¿¡ ´ëÀÀµÇ´Â ¸ðµç ¿ä¼Ò¸¦ Æ÷ÇÔÇÏ´Â Array ¸¦ ¹ÝȯÇÒ°ÍÀÌ´Ù. iteratorÇÔ¼ö°¡ ÁÖ¾îÁø´Ù¸é, Array´Â ´ëÀÀµÇ´Â °¢°¢ÀÇ ¿ä¼Ò¸¦ °¡Áø iterator¸¦ È£ÃâÇÑ °á°ú¸¦ Æ÷ÇÔÇÒ°ÍÀÌ´Ù.
include(obj)instance obj: °´Ã¼ ÁýÇÕ³» ÁÖ¾îÁø °´Ã¼¸¦ ãµµ·Ï ½ÃµµÇÑ´Ù. °´Ã¼°¡ ã¾ÆÁø´Ù¸é, true¸¦ ¹ÝȯÇϰí ãÁö ¸øÇÑ´Ù¸é false¸¦ ¹ÝȯÇÑ´Ù.
inject(initialValue, iterator)instance initialValue: ÃʱâÈ­ °ªÃ³·³ »ç¿ëµÇ´Â °´Ã¼, iterator: Function(accumulator, value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ iteratorÇÔ¼ö¸¦ »ç¿ëÇÏ¿© ÁýÇÕÀÇ ¸ðµç ¿ä¼Ò¸¦ Á¶ÇÕÇÑ´Ù. È£ÃâµÈ iterator´Â accumulatorÀÎÀÚ¿¡¼­ ÀÌÀü ¹Ýº¹ÀÇ °á°ú¸¦ Àü´ÞÇÑ´Ù. ù¹øÂ° ¹Ýº¹Àº accumulatorÀÎÀÚ³» initialValue¸¦ °¡Áø´Ù. ¸¶Áö¸· °á°ú´Â ¸¶Áö¸· ¹Ýȯ°ªÀÌ´Ù.
invoke(methodName [, arg1 [, arg2 [...]]])instance methodName: °¢°¢ÀÇ ¿ä¼Ò³»¿¡¼­ È£ÃâµÉ ¸Þ¼ÒµåÀÇ À̸§, arg1..argN: ¸Þ¼Òµå È£Ãâ·Î Àü´ÞµÉ ÀÎÀÚ. ÁýÇÕÀÇ °¢°¢ÀÇ ¿ä¼Ò³» methodName¿¡ ÀÇÇØ ¸í½ÃµÇ´Â ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â °ÍÀº ÁÖ¾îÁø ÀÎÀÚ(arg1¿¡¼­ argN) Àü´ÞÇϰí Array°´Ã¼·Î °á°ú¸¦ ¹ÝȯÇÑ´Ù.
map(iterator)instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ collect()°ú °°´Ù.
max([iterator])instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÁýÇÕ³» °¡Àå Å« °ªÀ̳ª iterator°¡ ÁÖ¾îÁø´Ù¸é ÁýÇÕ³» °¢°¢ÀÇ ¿ä¼Ò¸¦ À§ÇÑ iteratorÈ£ÃâÀÇ °¡Àå Å« °á°ú¸¦ ¹ÝȯÇÑ´Ù.
include(obj)instance obj: °´Ã¼ include()°ú °°´Ù.
min([iterator])instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÁýÇÕ³» °¡Àå ÀÛÀº °ªÀ» °¡Áø ¿ä¼Ò³ª iterator°¡ ÁÖ¾îÁø´Ù¸é ÁýÇÕ³» °¢°¢ÀÇ ¿ä¼Ò¸¦ À§ÇÑ iteratorÈ£ÃâÀÇ °¡Àå ÀÛÀº °á°ú¸¦ °¡Áø ¿ä¼Ò¸¦ ¹ÝȯÇÑ´Ù.
partition([iterator])instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ µÎ°³ÀÇ ´Ù¸¥ ¹è¿­À» Æ÷ÇÔÇÏ´Â Array¸¦ ¹ÝȯÇÑ´Ù. ù¹øÂ° ¹è¿­Àº true¸¦ ¹ÝȯÇÏ´Â iteratorÇÔ¼ö¸¦ ¾ß±âÇÏ´Â ¸ðµç ¿ä¼Ò¸¦ Æ÷ÇÔÇÒ°ÍÀÌ°í µÎ¹øÂ° ¹è¿­Àº ³²¾ÆÀÖ´Â ¿ä¼Ò¸¦ Æ÷ÇÔÇÒ°ÍÀÌ´Ù. ¸¸¾à iterator°¡ ÁÖ¾îÁöÁö ¾Ê´Â´Ù¸é, ù¹øÂ° ¹è¿­Àº true·Î ÇØ¼®ÇÏ´Â ¿ä¼Ò¸¦ Æ÷ÇÔÇÒ°ÍÀÌ°í ´Ù¸¥ ¹è¿­Àº ³²¾ÆÀÖ´Â ¿ä¼Ò¸¦ Æ÷ÇÔÇÒ°ÍÀÌ´Ù.
pluck(propertyName)instance propertyName : °¢°¢ÀÇ ¿ä¼Ò·ÎºÎÅÍ ÀоîµéÀÌ´Â ÇÁ¶óÆÛƼÀÇ À̸§. À̰ÍÀº ¿ä¼ÒÀÇ À妽º¸¦ Æ÷ÇÔÇÒ¼ö ÀÖ´Ù. ÁýÇÕÀÇ °¢°¢ÀÇ ¿ä¼Ò³» propertyName¿¡ ÀÇÇØ ¸í½ÃµÈ ÇÁ¶óÆÛƼ¿¡ °ªÀ» °¡Á®°¡°í Array°´Ã¼·Î °á°ú¸¦ ¹ÝȯÇÑ´Ù.
reject(iterator)instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÁýÇÕ³» °¢°¢ÀÇ ¿ä¼Ò¸¦ À§ÇÑ iteratorÇÔ¼ö¸¦ È£ÃâÇϰí false·Î ÇØ¼®ÇÏ´Â °ªÀ» ¹ÝȯÇÏ´Â iteratorÇÔ¼ö¸¦ ¾ß±âÇÏ´Â ¸ðµç ¿ä¼Ò¸¦ °¡Áø Array¸¦ ¹ÝȯÇÑ´Ù. ÀÌ ÇÔ¼ö´Â findAll()°ú´Â ¹Ý´ëµÇ´Â ÇÔ¼öÀÌ´Ù..
select(iterator)instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ findAll()°ú °°´Ù.
sortBy(iterator)instance iterator: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ iteratorÇÔ¼ö È£Ãâ°á°ú¸¦ µû¸£´Â Á¤·ÄµÈ ¸ðµç ¿ä¼Ò¸¦ °¡Áø ArrayÀ» ¹Ýȯ.
toArray()instance (none) ÁýÇÕÀÇ ¸ðµç ¿ä¼Ò¸¦ °¡Áö´Â Array¸¦ ¹Ýȯ.
zip(collection1[, collection2 [, ... collectionN [,transform]]])instance collection1 .. collectionN: º´ÇÕµÉ ¸ñ·Ï, transform: Function(value, index)¸¦ ÃæÁ·ÇÏ´Â ÇÔ¼ö °´Ã¼ ÇöÀçÀÇ ÁýÇÕÀ¸·Î °¢°¢ÀÇ ÁÖ¾îÁø ÁýÇÕÀ» º´ÇÕÇÑ´Ù. ÀÌ º´ÇÕ ÀÛ¾÷Àº °°Àº ¼öÀÇ ¿ä¼Ò¸¦ °¡Áø »õ·Î¿î ¹è¿­À» ¹ÝȯÇÑ´Ù. ÇöÀç ÁýÇÕ°ú °¢°¢ÀÇ ¿ä¼Ò°¡ °¢°¢ÀÇ º´ÇÕµÈ ÁýÇÕÀ¸·ÎºÎÅÍ °°Àº À妽º¸¦ °¡Áø ¿ä¼ÒÀÇ ¹è¿­(À̰ÍÀ» ÇÏÀ§ ¹è¿­À̶ó°í ºÎ¸£ÀÚ.)ÀÌ´Ù. transformÇÔ¼ö°¡ ÁÖ¾îÁø´Ù¸é, °¢°¢ÀÇ ÇÏÀ§ ¹è¿­Àº ¹ÝȯµÇ±â Àü¿¡ ÀÌ ÇÔ¼ö¿¡ ÀÇÇØ º¯Çüµô°ÍÀÌ´Ù. ºü¸¥ ¿¹Á¦ : [1,2,3].zip([4,5,6], [7,8,9]).inspect() ´Â "[[1,4,7],[2,5,8],[3,6,9] ]" ¸¦ ¹ÝȯÇÑ´Ù.

toc

Hash °´Ã¼

Hash °´Ã¼´Â hash±¸Á¶¸¦ ±¸ÇöÇÑ´Ù. À̸¦Å׸é, Key:Value½ÖÀÇ ÁýÇÕ.

Hash°´Ã¼³» °¢°¢ÀÇ Ç׸ñÀº µÎ°³ÀÇ ¿ä¼Ò(ù¹øÂ°´Â key, µÎ¹øÂ°´Â value)¸¦ °¡Áø ¹è¿­ÀÌ´Ù. °¢°¢ÀÇ Ç׸ñÀº µÎ°³ÀÇ ÇÁ¶óÆÛƼ(key ¿Í value)¸¦ °¡Áø´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
keys()instance (none) ¸ðµç Ç׸ñÀÇ key¸¦ °¡Áø ArrayÀ» ¹Ýȯ
values()instance (none) ¸ðµç Ç׸ñÀÇ value¸¦ °¡Áø ArrayÀ» ¹Ýȯ
merge(otherHash)instance otherHash: Hash °´Ã¼ hash¿Í Àü´ÞµÈ ´Ù¸¥ hash¸¦ Á¶ÇÕÇÏ°í »õ·Î¿î °á°ú hash¸¦ ¹Ýȯ
toQueryString()instance (none) Äõ¸® ¹®ÀÚ¿­Ã³·³ Æ÷¸ËÆÃµÈ ¹®ÀÚ¿­·Î hashÀÇ ¸ðµç Ç׸ñÀ» ¹Ýȯ. À̸¦Å׸é 'key1=value1&key2=value2&key3=value3'
inspect()instance(none) key:value½ÖÀ» °¡Áø hashÀÇ Æ÷¸ËÆÃµÈ ¹®ÀÚ¿­ Ç¥ÇöÀ» ¹ÝȯÇϱâ À§ÇØ º¯°æ(¿À¹ö¶óÀ̵å)

toc

ObjectRange Ŭ·¡½º

EnumerableÀ¸·ÎºÎÅÍ »ó¼Ó

»óÀ§ °æ°è³ª ÇÏÀ§ °æ°è·Î °ªµéÀÇ ¹üÀ§¸¦ Ç¥½Ã

ÇÁ¶óÆÛƼŸÀÔÁ¾·ù»ó¼¼¼³¸í
start(any)instance ¹üÀ§ÀÇ ½ÃÀÛ°ª
end(any)instance ¹üÀ§ÀÇ ¸¶Áö¸·°ª
exclusiveBooleaninstance °æ°èÀÚü°¡ ¹üÀ§ÀÇ ÀϺÎÀÎÁö ÆÇ´Ü

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](start, end, exclusive)constructorstart: ½ÃÀÛ°ª, end: ¸¶Áö¸·°ª, exclusive: °æ°è°¡ ¹üÀ§³» Æ÷ÇԵǴ°¡.? ÇϳªÀÇ range°´Ã¼¸¦ »ý¼ºÇÑ´Ù. start ¿¡¼­ end·Î ¹üÀ§¸¦ ÁöÁ¤ÇÑ´Ù. start ¿Í end°¡ °°Àº ŸÀÔÀÇ °´Ã¼À̰í succ()¸Þ¼Òµå¸¦ °¡Á®¾ß¸¸ ÇÑ´Ù.
include(searchedValue)instance searchedValue: °Ë»öÇÒ °ª ÁÖ¾îÁø °ªÀÌ ¹üÀ§³» °ªÀÎÁö üũ. true ³ª false°ªÀ» ¹ÝȯÇÑ´Ù.

toc

Class °´Ã¼

Class °´Ã¼´Â ¶óÀ̺귯¸®¿¡¼­ ´Ù¸¥ Ŭ·¡½º¸¦ ¼±¾ðÇÒ¶§ »ç¿ëµÈ´Ù. Ŭ·¡½º¸¦ ¼±¾ðÇÒ¶§ ÀÌ °´Ã¼¸¦ »ç¿ëÇÏ´Â °ÍÀº »ý¼ºÀÚ·Î Á¦°øµÇ´Â initialize()¸Þ¼Òµå¸¦ Áö¿øÇϱâ À§ÇÑ »õ·Î¿î Ŭ·¡½º¸¦ ¹ß»ý½ÃŲ´Ù.

¾Æ·¡ÀÇ »ùÇÃÀ» º¸¶ó.

//declaring the class
var MySampleClass = Class.create();

//defining the rest of the class implmentation
MySampleClass.prototype = {

   initialize: function(message) {
		this.message = message;
   },

   showMessage: function(ajaxResponse) {
      alert(this.message);
   }
};	

//now, let's instantiate and use one object
var myTalker = new MySampleClass('hi there.');
myTalker.showMessage(); //displays alert

			

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
create(*)instance(any) »õ·Î¿î Ŭ·¡½º¸¦ À§ÇÑ »ý¼ºÀÚ¸¦ Á¤ÀÇ

toc

Ajax °´Ã¼

ÀÌ °´Ã¼´Â AJAX±â´ÉÀ» Á¦°øÇÏ´Â ¸¹Àº ´Ù¸¥ Ŭ·¡½º¸¦ À§ÇÑ root¿Í ¸í¸í°ø°£(namespace)ó·³ Á¦°øÇÑ´Ù.

ÇÁ¶óÆÛƼŸÀÔÁ¾·ù»ó¼¼¼³¸í
activeRequestCountNumberinstance ÁøÇàÁßÀÎ AJAX¿äûÀÇ ¼ö.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
getTransport()instance(none) »õ·Î¿î XMLHttpRequest °´Ã¼¸¦ ¹Ýȯ

toc

Ajax.Responders °´Ã¼

Enumerable·Î ºÎÅÍ »ó¼ÓµÇ¾ú´Ù

ÀÌ °´Ã¼´Â Ajax°ü·Ã À̺¥Æ®°¡ ¹ß»ýÇÒ¶§ È£ÃâµÉ °´Ã¼ÀÇ ¸ñ·ÏÀ» º¸Á¸ÇÑ´Ù. ¿¹¸¦ µé¾î, ´ç½ÅÀÌ AJAXÀÛ¾÷À» À§ÇÑ Àü¿ª ¿¹¿Ü Çڵ鷯¸¦ ¿¬°áÇÏ±æ ¿øÇÑ´Ù¸é ÀÌ °´Ã¼¸¦ »ç¿ëÇÒ¼ö ÀÖ´Ù.

ÇÁ¶óÆÛƼŸÀÔÁ¾·ù»ó¼¼¼³¸í
respondersArrayinstance °´Ã¼ÀÇ ¸ñ·ÏÀº AJAXÀ̺¥Æ® ¾Ë¸²(notifications)À» À§ÇØ µî·ÏµÇ¾ú´Ù..

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
register(responderToAdd)instanceresponderToAdd: È£ÃâµÉ ¸Þ¼Òµå¸¦ °¡Áø °´Ã¼ responderToAddÀÎÀÚ¸¦ Àü´ÞÇÏ´Â °´Ã¼´Â AJAXÀ̺¥Æ®(À̸¦Å׸é, onCreate, onComplete, onException µîµî)ó·³ ¸í¸íµÈ ¸Þ¼Òµå¸¦ Æ÷ÇÔÇØ¾ß¸¸ ÇÑ´Ù. À¯»çÇÑ À̺¥Æ®°¡ ¹ß»ýÇϸé, ÀûÀýÇÑ À̸§À» °¡Áø ¸Þ¼Òµå¸¦ Æ÷ÇÔÇÏ´Â ¸ðµç µî·ÏµÈ °´Ã¼°¡ È£ÃâµÇ´Â ¸Þ¼Òµå¸¦ °¡Áú°ÍÀÌ´Ù.
unregister(responderToRemove)instanceresponderToRemove: list·ÎºÎÅÍ Á¦°ÅµÉ °´Ã¼ responderToRemove ÀÎÀÚ·Î Àü´ÞµÇ´Â °´Ã¼´Â µî·ÏµÈ °´Ã¼ÀÇ list·ÎºÎÅÍ Á¦°ÅµÉ°ÍÀÌ´Ù.
dispatch(callback, request, transport, json)instance callback: º¸°íµÇ´Â AJAXÀ̺¥Æ® À̸§, request: À̺¥Æ®¸¦ Ã¥ÀÓÁö´Â the Ajax.Request °´Ã¼, transport: AJAXÈ£ÃâÀ» °¡Áö´Â XMLHttpRequest °´Ã¼, json: ÀÀ´äÀÇ X-JSON Çì´õ(Á¸ÀçÇÒ¶§¸¸) µî·ÏµÈ °´Ã¼ÀÇ ¸ñ·ÏÀ» ÅëÇØ ½ÇÇàÇÏ´Â °ÍÀº callback ÀÎÀÚ³» °áÁ¤µÈ ¸Þ¼Òµå¸¦ °¡Áö´Â °ÍÀ» ã´Â´Ù. È£ÃâµÇ´Â °¢°¢ÀÇ ¸Þ¼Òµå´Â ´Ù¸¥ 3°³ÀÇ ÀÎÀÚ¸¦ Àü´ÞÇÑ´Ù. AJAXÀÀ´äÀÌ ¸î¸î JSONÄÁÅÙÃ÷¸¦ °¡Áö´Â X-JSON HTTP Çì´õ¸¦ Æ÷ÇÔÇÑ´Ù¸é, À̰ÍÀº Æò°¡µÇ°í jsonÀÎÀÚ·Î Àü´ÞµÉ°ÍÀÌ´Ù. ¸¸¾à À̺¥Æ®°¡ onException¶ó¸é, transportÀÎÀÚ´Â ´ë½Å¿¡ ¿¹¿Ü¸¦ °¡Áú°ÍÀ̰í jsonÀº Àü´ÞµÇÁö ¾ÊÀ»°ÍÀÌ´Ù.

toc

Ajax.Base Ŭ·¡½º

ÀÌ Å¬·¡½º´Â Ajax°´Ã¼³» Á¤ÀÇµÈ ´Ù¸¥ ´ëºÎºÐÀÇ Å¬·¡½º¸¦ À§ÇÑ ±âº»(base)Ŭ·¡½ºÃ³·³ »ç¿ëµÈ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
setOptions(options)instanceoptions: AJAX ¿É¼Ç AJAXÀÛ¾÷À» À§ÇØ ÇÊ¿äÇÑ ¿É¼Ç ¼ÂÆÃ
responseIsSuccess()instance(none) ¸¸¾à AJAXÀÛ¾÷ÀÌ ¼º°øÇÑ´Ù¸é true¸¦ ¹ÝȯÇϰí, ½ÇÆÐÇÑ´Ù¸é false¸¦ ¹Ýȯ
responseIsFailure()instance(none) responseIsSuccess()¿Í´Â ¹Ý´ë.

toc

Ajax.Request Ŭ·¡½º

Ajax.Base·Î ºÎÅÍ »ó¼Ó

AJAX ÀÛ¾÷À» ĸ½¶È­

ÇÁ¶óÆÛƼŸÀÔÁ¾·ù»ó¼¼¼³¸í
EventsArraystatic AJAXÀÛ¾÷Áß º¸°íµÇ´Â °¡´ÉÇÑ À̺¥Æ®/»óÅÂÀÇ ¸ñ·Ï. ¸ñ·ÏÀº 'Uninitialized', 'Loading', 'Loaded', 'Interactive', ±×¸®°í 'Complete.'¸¦ Æ÷ÇÔÇÑ´Ù.
transportXMLHttpRequestinstance AJAXÀÛ¾÷À» °¡Áö´Â XMLHttpRequest °´Ã¼
urlStringinstance ¿äû¿¡ ÀÇÇØ ´ë»óÀÌ µÇ´Â URL

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](url, options)constructorurl: ²¨³»±â À§ÇÑ url, options: AJAX ¿É¼Ç ÁÖ¾îÁø ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÁÖ¾îÁø urlÀ» È£ÃâÇÒ ÀÌ °´Ã¼ÀÇ ÇϳªÀÇ ÀνºÅϽº¸¦ »ý¼º. Áß¿ä»çÇ×: ¼±ÅÃµÈ urlÀº ºê¶ó¿ìÀúÀÇ º¸¾È ¼ÂÆÃÀ» À§ÇÑ ´ë»óÀÌ µÉ °¡Ä¡°¡ ¾ø´Ù. ¸¹Àº °æ¿ì ºê¶ó¿ìÀú´Â ÇöÀç ÆäÀÌÁöó·³ °°Àº È£½ºÆ®·ÎºÎÅͰ¡ ¾Æ´Ï¶ó¸é urlÀ» °¡Á®¿ÀÁö ¾ÊÀ»°ÍÀÌ´Ù. ´ç½ÅÀº ¼³Á¤À» ÇÇÇϰųª »ç¿ëÀÚÀÇ ºê¶ó¿ìÀú¸¦ Á¦ÇÑÇϱâ À§ÇÑ ·ÎÄà url¸¸À» »ç¿ëÇÒ °ÍÀÌ´Ù.
evalJSON()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº AJAXÀÀ´ä³» Á¸ÀçÇÏ´Â X-JSON HTTPÇì´õÀÇ ÄÁÅÙÃ÷¸¦ Æò°¡Çϱâ À§ÇØ ³»ºÎÀûÀ¸·Î È£ÃâµÈ´Ù.
evalReponse()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. AJAXÀÀ´äÀÌ text/javascriptÀÇ Content-typeÇì´õ¸¦ °¡Áø´Ù¸é, ÀÀ´ä ¸öü´Â Æò°¡µÇ°í ÀÌ ¸Þ¼Òµå´Â »ç¿ëµÉ°ÍÀÌ´Ù.
header(name)instancename: HTTP Çì´õ¸í ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº AJAXÀÀ´äÀÇ HTTPÇì´õÀÇ ÄÁÅÙÃ÷¸¦ °¡Á®¿À±â À§ÇØ ³»ºÎÀûÀ¸·Î È£ÃâµÈ´Ù.
onStateChange()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº AJAXÈ£Ãâ »óÅ º¯°æ½Ã °´Ã¼ ÀÚü¿¡ ÀÇÇØ È£ÃâµÈ´Ù.
request(url)instanceurl: AJAXÈ£ÃâÀ» À§ÇÑ url ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº »ý¼ºÀÚ¸¦ È£ÃâÇÏ´Â µ¿¾È ¹ú½á È£ÃâµÇ¾ú´Ù.
respondToReadyState(readyState)instancereadyState: »óÅ ¼ýÀÚ°ª(1 ¿¡¼­ 4) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎ¿¡¼­ È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº AJAXÈ£Ãâ »óŰ¡ º¯°æµÉ¶§ °´Ã¼ ÀÚü¿¡ ÀÇÇØ È£ÃâµÈ´Ù.
setRequestHeaders()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº HTTP¿äûÀ» ÇÏ´Â µ¿¾È º¸³»¾îÁú HTTPÇì´õ¸¦ Á¶ÇÕÇϱâ À§ÇÑ °´Ã¼ ½º½º·Î¿¡ ÀÇÇØ È£ÃâµÈ´Ù.

toc

options ÀÎÀÚ °´Ã¼

AJAXÀÛ¾÷ÀÇ Áß¿äÇÑ ºÎºÐÀº options ÀÎÀÚÀÌ´Ù. À̰ÍÀº ±â´ëµÇ´Â ÇÁ¶óÆÛƼ¸¦ °¡Áö´Â µ¿¾È ¾î¶°ÇÑ °´Ã¼µµ Àü´ÞµÉ¼ö ÀÖ´Ù. À̰ÍÀº AJAXÈ£ÃâÀ» À§ÇØ ÀÍ¸í °´Ã¼¸¦ »ý¼ºÇÏ´Â °ÍÀÌ °øÅëÀûÀÌ´Ù.

ÇÁ¶óÆÛƼŸÀÔµðÆúÆ®»ó¼¼¼³¸í
methodString'post' HTTP¿äûÀÇ ¸Þ¼Òµå
parametersString'' ¿äû¿¡ Àü´ÞÇÑ °ªµéÀÇ urlÇüÅÂÀÇ ¸ñ·Ï
asynchronousBooleantrue AJAXÈ£ÃâÀÌ ºñµ¿±âÀûÀ¸·Î ¸¸µé¾îÁö´ÂÁö Ç¥½Ã
postBodyStringundefined HTTP POSTÀÇ °æ¿ì ¿äûÀÇ ¸öü³» Àü´ÞµÇ´Â ³»¿ë
requestHeadersArrayundefined ¿äû°ú ÇÔ²² Àü´ÞµÇ±â À§ÇÑ HTTPÇì´õÀÇ ¸ñ·Ï. ÀÌ ¸ñ·ÏÀº ¸¹Àº ¼öÀÇ Ç׸ñÀ» °¡Á®¾ß ÇÑ´Ù. ³ª¸ÓÁö Ç׸ñÀº »ç¿ëÀÚ Á¤ÀÇ Çì´õÀÇ À̸§ÀÌ´Ù. ±×¸®°í ´ÙÀ½ÀÇ Ç׸ñÀº Çì´õÀÇ ¹®ÀÚ¿­ °ªÀÌ´Ù. ¿¹Á¦ : ['my-header1', 'this is the value', 'my-other-header', 'another value']
onXXXXXXXXFunction(XMLHttpRequest)undefined °¢°¢ÀÇ À̺¥Æ®/»óŰ¡ AJAXÈ£ÃâÀÌ ¹ß»ýÇÏ´Â µ¿¾È µµÂøÇÒ¶§ È£ÃâµÉ »ç¿ëÀÚÁ¤ÀÇ ÇÔ¼ö. ¿¹Á¦ var myOpts = {onComplete: showResponse, onLoaded: registerLoaded};. »ç¿ëµÇ´Â ÇÔ¼ö´Â AJAXÀÛ¾÷À» °¡Áö´Â XMLHttpRequest°´Ã¼¸¦ Æ÷ÇÔÇÏ´Â ÇϳªÀÇ ÀÎÀÚ¸¦ ¹ÞÀ»°ÍÀÌ´Ù.
onSuccessFunction(XMLHttpRequest)undefined AJAXÈ£ÃâÀÌ ¼º°øÀûÀ¸·Î ¿Ï¼ºµÉ¶§ È£ÃâµÉ »ç¿ëÀÚÁ¤ÀÇ ÇÔ¼ö. »ç¿ëµÇ´Â ÇÔ¼ö´Â AJAXÀÛ¾÷À» °¡Áö´Â XMLHttpRequest°´Ã¼¸¦ Æ÷ÇÔÇÏ´Â ÇϳªÀÇ ÀÎÀÚ¸¦ ¹ÞÀ»°ÍÀÌ´Ù.
onFailureFunction(XMLHttpRequest)undefined AJAXÈ£ÃâÀÌ ¿¡·¯¸¦ °¡ÁøÃ¤ ³¡³¯¶§ È£ÃâµÉ »ç¿ëÀÚÁ¤ÀÇ ÇÔ¼ö. »ç¿ëµÇ´Â ÇÔ¼ö´Â AJAXÀÛ¾÷À» °¡Áö´Â XMLHttpRequest°´Ã¼¸¦ Æ÷ÇÔÇÏ´Â ÇϳªÀÇ ÀÎÀÚ¸¦ ¹ÞÀ»°ÍÀÌ´Ù.
insertionFunction(Object, String)null »ðÀÔÇϱâ À§ÇØ È£ÃâµÇ´Â ÇÔ¼ö´Â ÅØ½ºÆ®¸¦ ¿ä¼Ò·Î ¹ÝȯÇÑ´Ù. ÇÔ¼ö´Â ¼öÁ¤µÇ±â À§ÇÑ ¿ä¼Ò°´Ã¼¿Í Ajax.Updater°´Ã¼¿¡¸¸ Àû¿ëµÇ´Â ÀÀ´ä ÅØ½ºÆ®ÀÇ µÎ°³ÀÇ ÀÎÀÚ¸¦ °¡Áö°í È£ÃâµÈ´Ù.
evalScriptsBooleanundefined, false ½ºÅ©¸³Æ® ºí·°ÀÌ ÀÀ´äÀÌ µµÂøÇßÀ»¶§ Æò°¡ÇÒÁö¸¦ ÆÇ´Ü. Ajax.Updater°´Ã¼¿¡¸¸ Àû¿ë.
decayNumberundefined, 1 Ajax.PeriodicalUpdater °´Ã¼´Â ¹ÞÀº ÀÀ´äÀÌ ¸¶Áö¸· °Í°ú °°À»¶§ ºñÀ²À» »õ·Ó°Ô ÇÏ¿© ¿¬¼ÓÀûÀÎ ÈÄÅ𸦠°áÁ¤. ¿¹¸¦ µé¾î, ´ç½ÅÀÌ 2¸¦ »ç¿ëÇÑ´Ù¸é, »õ·Ó°Ô µÈ°ÍÁß¿¡ Çϳª°¡ ÀÌÀü°Í°ú °°Àº °á°ú¸¦ ¸¸µçÈÄ¿¡, °´Ã¼´Â ´ÙÀ½ refresh¸¦ À§ÇÑ ½Ã°£ÀÇ µÎ¹è¸¦ ±â´Ù¸±°ÍÀÌ´Ù. À̰ÍÀº ´Ù½Ã ¹Ýº¹ÇÑ´Ù¸é, °´Ã¼´Â 4¹è¸¦ ±â´Ù¸±°ÍÀÌ´Ù. À̰ÍÀ» ÈÄÅ𸦠ÇÇÇϱâ À§ÇØ Á¤ÀǵÇÁö ¾Ê°Å³ª 1À» »ç¿ëÇϵµ·Ï ³²°ÜµÎ¶ó.
frequencyNumberundefined, 2 ÃÊ´ÜÀ§ÀÇ °»½Å°£°Ý(Ƚ¼ö°¡ ¾Æ´Ñ), Ajax.PeriodicalUpdater°´Ã¼¿¡¸¸ Àû¿ë.

toc

Ajax.Updater Ŭ·¡½º

Ajax.Request·Î ºÎÅÍ »ó¼Ó

¿äûµÈ urlÀÌ ´ç½Å ÆäÀÌÁöÀÇ Æ¯Á¤ ¿ä¼Ò³» Á÷Á¢ÀûÀ¸·Î »ðÀÔÇÏ±æ ¿øÇÏ´Â HTMLÀ» ¹ÝȯÇÒ¶§ »ç¿ëµÈ´Ù. ´ç½ÅÀº urlÀÌ µµÂøÀ» Æò°¡ÇÒ <script>ºí·°À» ¹ÝȯÇÒ¶§ ÀÌ °´Ã¼¸¦ »ç¿ëÇÒ¼ö ÀÖ´Ù. ½ºÅ©¸³Æ®·Î ÀÛ¾÷Çϱâ À§ÇØ evalScripts ¿É¼ÇÀ» »ç¿ëÇ϶ó.

ÇÁ¶óÆÛƼŸÀÔÁ¾·ù»ó¼¼¼³¸í
containersObjectinstance ÀÌ °´Ã¼´Â µÎ°³ÀÇ ÇÁ¶óÆÛƼ(containers.success ´Â AJAXÈ£ÃâÀÌ ¼º°øÇÒ¶§ »ç¿ëµÉ°ÍÀÌ´Ù. ±×¸®°í AJAXÈ£ÃâÀÌ ½ÇÆÐÇÑ´Ù¸é containers.failure°¡ »ç¿ëµÉ°ÍÀÌ´Ù.)¸¦ Æ÷ÇÔÇÑ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](container, url, options)constructor container: À̰ÍÀº ¿ä¼ÒÀÇ id, ¿ä¼Ò°´Ã¼ ÀÚü, ¶Ç´Â µÎ°³ÀÇ ÇÁ¶óÆÛƼ(AJAXÈ£ÃâÀÌ ¼º°øÇßÀ»¶§ »ç¿ëµÉ object.success ¿ä¼Ò(¶Ç´Â id), ±×¸®°í AJAXÈ£ÃâÀÌ ½ÇÆÐÇßÀ»¶§ »ç¿ëµÉ object.failure¿ä¼Ò(¶Ç´Â id))¸¦ °¡Áö´Â °´Ã¼°¡ µÉ¼ö ÀÖ´Ù. url: °¡Á®¿À±â À§ÇÑ url, options: AJAX ¿É¼Ç ÁÖ¾îÁø ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÁÖ¾îÁø urlÀ» È£ÃâÇÒ ÀÌ °´Ã¼ÀÇ ÇϳªÀÇ ÀνºÅϽº¸¦ »ý¼º.
updateContent()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº ÀÀ´äÀ» ¹Þ¾ÒÀ»¶§ °´Ã¼ ÀÚü¿¡ ÀÇÇØ È£ÃâµÈ´Ù. À̰ÍÀº HTML·Î ÀûÀýÇÑ ¿ä¼Ò¸¦ ¼öÁ¤Çϰųª insertion¿É¼Ç³» Àü´ÞµÇ´Â ÇÔ¼ö¸¦ È£ÃâÇÒ°ÍÀÌ´Ù. ÀÌ ÇÔ¼ö´Â µÎ°³ÀÇ ÀÎÀÚ(¼öÁ¤µÇ±â À§ÇÑ ¿ä¼Ò¿Í ÀÀ´ä ÅØ½ºÆ®)¸¦ °¡Áö°í È£ÃâµÉ°ÍÀÌ´Ù.

toc

Ajax.PeriodicalUpdater Ŭ·¡½º

Ajax.Base·Î ºÎÅÍ »ó¼Ó

ÀÌ Å¬·¡½º´Â ¹Ýº¹ÀûÀ¸·Î ÀνºÅϽºÈ­ÇÏ°í ÆäÀÌÁö¿¡¼­ ¿ä¼Ò¸¦ »õ·Ó°Ô Çϰųª Ajax.Updater°¡ ¼öÇàÇÒ¼ö ÀÖ´Â ´Ù¸¥ ÀÛ¾÷Áß ¾î´À°ÍÀ» ¼öÇàÇϱâ À§ÇÑ Ajax.Updater°´Ã¼¸¦ »ç¿ëÇÑ´Ù. Á»´õ ¸¹Àº Á¤º¸¸¦ À§ÇØ Ajax.Updater ÂüÁ¶¸¦ üũÇ϶ó.

ÇÁ¶óÆÛƼŸÀÔÁ¾·ù»ó¼¼¼³¸í
containerObjectinstance ÀÌ °ªÀº Ajax.Updater»ý¼ºÀÚ¿¡ ÀϰüÀûÀ¸·Î Àü´ÞµÉ°ÍÀÌ´Ù.
urlStringinstance ÀÌ °ªÀº Ajax.UpdaterÀÇ »ý¼ºÀÚ¿¡ ÀϰüÀûÀ¸·Î Àü´ÞµÉ°ÍÀÌ´Ù.
frequencyNumberinstance ÃÊ´ÜÀ§ÀÇ refresh°£°Ý. µðÆúÆ®´Â 2ÃÊ. ÀÌ ¼ýÀÚ´Â Ajax.Updater °´Ã¼¸¦ È£ÃâÇÒ¶§ ÇöÀç Ãà¼Ò(decay)¿¡ ÀÇÇØ °öÇØÁú°ÍÀÌ´Ù.
decayNumberinstance ÀÛ¾÷À» Àç-¼öÇàÇÒ¶§ Àû¿ëµÉ Ãà¼Ò(decay)·¹º§À» À¯Áö
updaterAjax.Updaterinstance °¡Àå Ãֽſ¡ »ç¿ëµÈ Ajax.Updater °´Ã¼
timerObjectinstance ´Ù¸¥ refresh¸¦ À§ÇÑ ½Ã°¢À϶§ °´Ã¼¸¦ ¾Ë¸®±â À§ÇØ »ç¿ëµÇ´Â ÀÚ¹Ù½ºÅ©¸³Æ® ŸÀ̸Ó

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](container, url, options)constructor or container:À̰ÍÀº ¿ä¼ÒÀÇ id, ¿ä¼Ò°´Ã¼ ÀÚü, ¶Ç´Â µÎ°³ÀÇ ÇÁ¶óÆÛƼ(AJAXÈ£ÃâÀÌ ¼º°øÇÒ¶§ »ç¿ëµÉ object.success ¿ä¼Ò(³ª id), AJAXÈ£ÃâÀÌ ½ÇÆÐÇÒ¶§ »ç¿ëÇÒ object.failure ¿ä¼Ò(³ª id))¸¦ °¡Áö´Â °´Ã¼°¡ µÉ¼ö ÀÖ´Ù. url: °¡Á®¿À±â À§ÇÑ url, options: AJAX ¿É¼Ç ÁÖ¾îÁø ¿É¼ÇÀ» »ç¿ëÇÏ¿© ÁÖ¾îÁø urlÀ» È£ÃâÇÒ ÀÌ °´Ã¼ÀÇ ÇϳªÀÇ ÀνºÅϽº¸¦ »ý¼º
start()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀÇ Á¤±âÀûÀÎ ÀÛ¾÷ ¼öÇàÀ» ½ÃÀÛÇϱâ À§ÇØ °´Ã¼ ÀÚü¿¡ ÀÇÇØ È£ÃâµÈ´Ù.
stop()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀÇ Á¤±âÀûÀÎ ÀÛ¾÷ ¼öÇàÀ» ½ÃÀÛÇϱâ À§ÇØ °´Ã¼ ÀÚü¿¡ ÀÇÇØ È£ÃâµÈ´Ù.
updateComplete()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. ¿äûÀ» ¿Ï¼ºÇÑ ÈÄ¿¡ »ç¿ëµÇ´Â Ajax.Updater¿¡ ÀÇÇØ È£ÃâµÈ´Ù. À̰ÍÀº ´ÙÀ½ refresh½ºÄÉÁÙ¸µ Çϱâ À§ÇØ »ç¿ëµÈ´Ù.
onTimerEvent()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº ´ÙÀ½ ¼öÁ¤À» À§ÇÑ ½Ã°¢À϶§ ³»ºÎÀûÀ¸·Î È£ÃâµÈ´Ù.

toc

Element °´Ã¼

ÀÌ °´Ã¼´Â DOM³» ¿ä¼Ò¸¦ º¯°æÇϱâ À§ÇØ ¸î¸î À¯Æ¿¸®Æ¼¼º ÇÔ¼öµéÀ» Á¦°øÇÑ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
addClassName(element, className)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, className: CSS Ŭ·¡½º¸í ÁÖ¾îÁø class¸íÀ» ¿ä¼ÒÀÇ class¸íÀ¸·Î Ãß°¡
classNames(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ÁÖ¾îÁø element¿Í °ü·ÃµÈ CSS class¸íÀ» Ç¥½ÃÇÏ´Â Element.ClassNames °´Ã¼¸¦ ¹Ýȯ
cleanWhitespace(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ¿ä¼ÒÀÇ Àڽijëµå¿¡¼­ °ø¹éÀ» Á¦°Å
empty(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð elementűװ¡ ºñ¾îÀÖ´ÂÁö(¶Ç´Â °ø¹é¸¸À» °¡Áö°í ÀÖ´ÂÁö) Ç¥½ÃÇÏ´Â Boolean°ªÀ» ¹Ýȯ
getDimensions(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð elementÀÇ ¸éÀû(dimensions)À» ¹Ýȯ. ¹ÝȯµÈ °ªÀº µÎ°³ÀÇ ÇÁ¶óÆÛƼ(height ¿Í width)¸¦ °¡Áö´Â °´Ã¼ÀÌ´Ù.
getHeight(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ¿ä¼ÒÀÇ offsetHeight°ªÀ» ¹Ýȯ
getStyle(element, cssProperty)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, cssProperty : CSSÇÁ¶óÆÛƼ('prop-name' ¶Ç´Â 'propName' °¡ ÀÛµ¿ÇÏ´Â ÇüÅÂ)ÀÇ À̸§ ÁÖ¾îÁø element³» CSSÇÁ¶óÆÛƼÀÇ °ªÀ» ¹ÝȯÇϰųª Á¸ÀçÇÏÁö ¾Ê´Â´Ù¸é null À» ¹Ýȯ
hasClassName(element, className)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, className: CSS class¸í ¿ä¼Ò°¡ class¸íÁß¿¡ Çϳª·Î ÁÖ¾îÁø class¸íÀ» °¡Áø´Ù¸é true¸¦ ¹Ýȯ
hide(elem1 [, elem2 [, elem3 [...]]])instanceelemN: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð style.display¸¦ 'none'·Î ¼ÂÆÃÇÏ¿© °¢°¢ÀÇ ¿ä¼Ò¸¦ ¼û±ä´Ù.
makeClipping(element)instanceelement: element °´Ã¼³ª ¾ÆÀ̵ð
makePositioned(element)instanceelement: element °´Ã¼³ª ¾ÆÀ̵ð elementÀÇ style.position À» 'relative'·Î º¯°æ
remove(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵𠹮¼­·Î ºÎÅÍ ¿ä¼Ò¸¦ Á¦°ÅÇÑ´Ù.
removeClassName(element, className)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, className: CSS Ŭ·¡½º¸í ¿ä¼ÒÀÇ class¸íÀ¸·Î ºÎÅÍ ÁÖ¾îÁø class¸íÀ» Á¦°Å
scrollTo(element)instanceelement: element °´Ã¼³ª ¾ÆÀ̵ð âÀ» elementÀ§Ä¡·Î ½ºÅ©·Ñ
setStyle(element, cssPropertyHash)instanceelement: element °´Ã¼³ª ¾ÆÀ̵ð, cssPropertyHash : Àû¿ëµÇ±â À§ÇÑ ½ºÅ¸ÀÏÀ» °¡Áö´Â Hash°´Ã¼ cssPropertyHash ÀÎÀÚ³» °ª¿¡ µû¶ó, ÁÖ¾îÁø element³» CSSÇÁ¶óÆÛƼÀÇ °ªÀ» ¼ÂÆÃ.
show(elem1 [, elem2 [, elem3 [...]]])instanceelemN: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð style.display¸¦ ''·Î ´Ù½Ã ¼ÂÆÃÇÏ¿© °¢°¢ÀÇ ¿ä¼Ò¸¦ º¸¿©ÁØ´Ù.
toggle(elem1 [, elem2 [, elem3 [...]]])instanceelemN: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵𠰢°¢ÀÇ Àü´ÞµÈ ¿ä¼ÒÀÇ °¡½Ã¼º(visibility)À» Åä±Û(toggle)ÇÑ´Ù.
undoClipping(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð
undoPositioned(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð elementÀÇ style.position À» ''À¸·Î ÃʱâÈ­
update(element, html)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, html: html ÄÁÅÙÃ÷ ÁÖ¾îÁø htmlÀÎÀÚ¸¦ °¡Áö´Â ¿ä¼ÒÀÇ ³»ºÎ htmlÀ» ´ëü. ÁÖ¾îÁø htmlÀÌ <script>ºí·°À» Æ÷ÇÔÇÑ´Ù¸é, ±×°ÍµéÀº Æ÷ÇÔµÇÁö´Â ¾ÊÁö¸¸ Æò°¡µÉ°ÍÀÌ´Ù.
visible(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ¿ä¼Ò°¡ ´«¿¡ º¸ÀÌ´ÂÁö Ç¥½ÃÇÏ´Â Boolean°ªÀ» ¹Ýȯ

toc

Element.ClassNames class

Enumerable·ÎºÎÅÍ »ó¼Ó

element¿¡ °ü·ÃµÈ CSS class¸íÀÇ collectionÀ» Ç¥½Ã

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](element)constructorelement: DOM element °´Ã¼¶Ç´Â ¾ÆÀ̵ð ÁÖ¾îÁø elementÀÇ CSS class¸íÀ» Ç¥½ÃÇÏ´Â Element.ClassNames °´Ã¼¸¦ »ý¼º
add(className)instance className: CSS class ¸í element¿¡ °ü·ÃµÈ class¸íÀÇ ¸®½ºÆ®¿¡ ÁÖ¾îÁø CSS class¸íÀ» Ãß°¡
remove(className)instance className: CSS class ¸í element¿¡ °ü·ÃµÈ class¸íÀÇ ¸®½ºÆ®·ÎºÎÅÍ ÁÖ¾îÁø CSS class¸íÀ» Á¦°Å
set(className)instance className: CSS class ¸í ÁÖ¾îÁø CSS class¸íÀ» °¡Áø elementÀ» °áÇÕ, element·ÎºÎÅÍ ´Ù¸¥ class¸íÀ» Á¦°Å.

toc

The Abstract °´Ã¼

ÀÌ °´Ã¼´Â ¶óÀ̺귯¸®³» ´Ù¸¥ Ŭ·¡½º¸¦ À§ÇÑ rootó·³ Á¦°øÇÑ´Ù. À̰ÍÀº ¾î¶² ÇÁ¶óÆÛƼ³ª ¸Þ¼Òµåµµ °¡ÁöÁö ¾Ê´Â´Ù. ÀÌ °´Ã¼¿¡ Á¤ÀÇµÈ Å¬·¡½º´Â ÀüÅëÀûÀÎ Ãß»ó Ŭ·¡½ºÃ³·³ 󸮵ȴÙ.

toc

Abstract.Insertion Ŭ·¡½º

ÀÌ Å¬·¡½º´Â µ¿ÀûÀ¸·Î ³»¿ë¹°À» Ãß°¡ÇÒ ´Ù¸¥ Ŭ·¡½º¸¦ À§ÇÑ ±âº» Ŭ·¡½ºÃ³·³ »ç¿ëµÈ´Ù. ÀÌ Å¬·¡½º´Â Ãß»ó Ŭ·¡½ºÃ³·³ »ç¿ëµÈ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](element, content)constructor element: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, content: »ðÀԵǴ HTML µ¿Àû ³»¿ë¹° »ðÀÔÀ» µµ¿ï °´Ã¼¸¦ »ý¼º
contentFromAnonymousTable()instance (none)

ÇÁ¶óÆÛƼŸÀÔÁ¾·ù»ó¼¼¼³¸í
adjacencyStringstatic, parameter ³»¿ë¹°ÀÌ ÁÖ¾îÁø ¿ä¼Ò¿¡ ´ëÇØ »ó´ëÀûÀ¸·Î À§Ä¡ÇÒ ÁöÁ¡À» ¸í½ÃÇÏ´Â ÆÄ¶ó¹ÌÅÍ. °¡´ÉÇÑ °ªÀº 'beforeBegin', 'afterBegin', 'beforeEnd', ±×¸®°í 'afterEnd'.
elementObjectinstance »ðÀÔÀÌ »ó´ëÀûÀ¸·Î ¸¸µé¾îÁú ¿ä¼Ò°´Ã¼
contentStringinstance »ðÀ﵃ HTML.

toc

Insertion °´Ã¼

ÀÌ °´Ã¼´Â ¶óÀ̺귯¸®³» ´Ù¸¥ Ŭ·¡½º¸¦ À§ÇÑ rootó·³ Á¦°øÇÑ´Ù. À̰ÍÀº ¾î¶°ÇÑ ÇÁ¶óÆÛƼ³ª ¸Þ¼Òµå¸¦ °¡ÁöÁö ¾Ê´Â´Ù. ÀÌ °´Ã¼¿¡ Á¤ÀÇµÈ Å¬·¡½º´Â ÀüÅëÀûÀÎ Ãß»ó Ŭ·¡½ºÃ³·³ 󸮵ȴÙ.

toc

Insertion.Before Ŭ·¡½º

Abstract.Insertion·Î ºÎÅÍ »ó¼Ó

¿ä¼Ò ¾Õ¿¡ HTML»ðÀÔ

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](element, content)constructor element: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, content: »ðÀԵǴ HTML Abstract.InsertionÀ¸·Î ºÎÅÍ »ó¼Ó. µ¿ÀûÀ¸·Î ³»¿ë¹°À» »ðÀÔÇÏ´Â °ÍÀ» µ½´Â °´Ã¼¸¦ »ý¼º

´ÙÀ½ÀÇ ÄÚµå´Â

<br>Hello, <span id="person" style="color:red;">Wiggum. How's it going?</span>

<script> new Insertion.Before('person', 'Chief '); </script>
			

´ÙÀ½Ã³·³ HTMLÀÌ º¯°æµÉ°ÍÀÌ´Ù.

<br>Hello, Chief <span id="person" style="color:red;">Wiggum. How's it going?</span>	
			

toc

Insertion.Top Ŭ·¡½º

Abstract.Insertion·Î ºÎÅÍ »ó¼Ó

¿ä¼Ò¾Æ·¡ÀÇ Ã¹¹øÂ° ÀÚ½ÄÀ¸·Î HTMLÀ» »ðÀÔ. ÀÌ ³»¿ë¹°Àº ¿ä¼ÒÀÇ ¿­±â ű׵ڿ¡ À§Ä¡ÇÒ°ÍÀÌ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](element, content)constructor element: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, content: »ðÀԵǴ HTML Abstract.InsertionÀ¸·ÎºÎÅÍ »ó¼Ó. µ¿ÀûÀ¸·Î ³»¿ë¹°À» »ðÀÔÇÏ´Â °ÍÀ» µ½´Â °´Ã¼ »ý¼º

´ÙÀ½ÀÇ ÄÚµå´Â

<br>Hello, <span id="person" style="color:red;">Wiggum. How's it going?</span>

<script> new Insertion.Top('person', 'Mr. '); </script>
			

´ÙÀ½Ã³·³ HTMLÀÌ º¯°æµÉ°ÍÀÌ´Ù.

<br>Hello, <span id="person" style="color:red;">Mr. Wiggum. How's it going?</span>	
			

toc

Insertion.Bottom Ŭ·¡½º

Abstract.Insertion·Î ºÎÅÍ »ó¼Ó

¿ä¼Ò¾Æ·¡ÀÇ ¸¶Áö¸· ÀÚ½ÄÀ¸·Î HTML»ðÀÔ. ³»¿ë¹°Àº ¿ä¼ÒÀÇ ´Ý±â ű׾տ¡ À§Ä¡ÇÒ°ÍÀÌ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](element, content)constructor element: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, content: HTML to be inserted Abstract.Insertion·Î ºÎÅÍ »ó¼Ó. µ¿ÀûÀ¸·Î ³»¿ë¹°À» »ðÀÔÇÏ´Â °ÍÀ» µ½´Â °´Ã¼ »ý¼º

´ÙÀ½ÀÇ ÄÚµå´Â

<br>Hello, <span id="person" style="color:red;">Wiggum. How's it going?</span>

<script> new Insertion.Bottom('person', " What's up?"); </script>
			

´ÙÀ½Ã³·³ HTMLÀÌ º¯°æµÉ°ÍÀÌ´Ù.

<br>Hello, <span id="person" style="color:red;">Wiggum. How's it going? What's up?</span>	
			

toc

Insertion.After Ŭ·¡½º

Abstract.Insertion·Î ºÎÅÍ »ó¼Ó

¿ä¼ÒÀÇ ´Ý±â ÅÂ±×µÚ HTML»ðÀÔ

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](element, content)constructor element: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, content: HTML to be inserted Abstract.InsertionÀ¸·ÎºÎÅÍ »ó¼Ó. µ¿ÀûÀ¸·Î ³»¿ë¹°À» »ðÀÔÇÏ´Â °ÍÀ» µ½´Â °´Ã¼ »ý¼º

´ÙÀ½ÀÇ ÄÚµå´Â

<br>Hello, <span id="person" style="color:red;">Wiggum. How's it going?</span>

<script> new Insertion.After('person', ' Are you there?'); </script>
			

´ÙÀ½Ã³·³ HTMLÀÌ º¯°æµÉ°ÍÀÌ´Ù.

<br>Hello, <span id="person" style="color:red;">Wiggum. How's it going?</span> Are you there?	
			

toc

Field °´Ã¼

ÀÌ °´Ã¼´Â Æû³» inputÇʵå¿Í ÀÛµ¿Çϱâ À§ÇÑ ¸î°¡Áö À¯Æ¿¸®Æ¼¼º ÇÔ¼ö¸¦ Á¦°øÇÑ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
clear(field1 [, field2 [, field3 [...]]])instancefieldN: field element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð field¿ä¼Ò·ÎºÎÅÍ °¢°¢ Àü´ÞµÈ °ªÀ» Áö¿ò(clear)
present(field1 [, field2 [, field3 [...]]])instancefieldN: field element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ¸ðµç Æû field°¡ ºó°ªÀÌ ¾Æ´Ï¶ó¸é true¸¦ ¹Ýȯ
focus(field)instancefield: field element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ÁÖ¾îÁø Æû field·Î ÀÔ·Â Æ÷Ä¿½º À̵¿
select(field)instancefield: field element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ÅØ½ºÆ® ¼±ÅÃÀ» Áö¿øÇÏ´Â field³» °ªÀ» ¼±ÅÃ
activate(field)instancefield: field element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð Æ÷Ä¿½º¸¦ À̵¿Çϰí ÅØ½ºÆ® ¼±ÅÃÀ» Áö¿øÇÏ´Â field³» °ªÀ» ¼±ÅÃ

toc

Form °´Ã¼

ÀÌ °´Ã¼´Â µ¥ÀÌÅÍ Ç׸ñ Æû°ú ±×°ÍµéÀÇ ÀÔ·Â field¿Í ÀÛµ¿Çϱâ À§ÇÑ ¸î¸î À¯Æ¿¸®Æ¼¼º ÇÔ¼ö¸¦ Á¦°øÇÑ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
serialize(form)instanceform: form element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð 'field1=value1&field2=value2&field3=value3'ó·³ field¸í°ú °ªÀÇ urlÇüÅÂÀÇ ¸ñ·ÏÀ» ¹Ýȯ
findFirstElement(form)instanceform: form element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð form¿¡¼­ ù¹øÂ°·Î »ç¿ë°¡´ÉÇÑ Çʵå element¸¦ ¹Ýȯ
getElements(form)instanceform: form element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð Æû³» ¸ðµç ÀÔ·Â field¸¦ Æ÷ÇÔÇÏ´Â Array ¹Ýȯ
getInputs(form [, typeName [, name]])instance form: form element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, typeName: input¿ä¼ÒÀÇ Å¸ÀÔ, name: input¿ä¼Ò¸í. Æû³» ¸ðµç <input>¿ä¼Ò¸¦ Æ÷ÇÔÇÏ´Â Array ¹Ýȯ. ¼±ÅÃÀûÀ¸·Î ¸ñ·ÏÀº ¿ä¼ÒÀÇ Å¸ÀÔÀ̳ª name¼Ó¼º¿¡ ÀÇÇØ ÇÊÅ͸µ µÉ¼ö ÀÖ´Ù.
disable(form)instanceform: form element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð Æû³» ¸ðµç ÀÔ·Â field¸¦ »ç¿ëºÒ°¡»óÅ·Π¸¸µé±â
enable(form)instanceform: form element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð Æû³» ¸ðµç ÀÔ·Â field¸¦ »ç¿ë°¡´ÉÇÏ°Ô ¸¸µé±â
focusFirstElement(form)instanceform: form element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ù¹øÂ° °¡½Ã¼ºÀ» Ȱ¼ºÈ­Çϰí, Æû³» ÀÔ·Â field¸¦ °¡´ÉÇÏ°Ô Çϱâ
reset(form)instanceform: form element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ÆûÀ» ¸®¼ÂÇϱâ. form°´Ã¼ÀÇ reset()¸Þ¼Òµå¿Í °°´Ù.

toc

Form.Element °´Ã¼

ÀÌ °´Ã¼´Â Æû¿ä¼Ò¿Í ÀÛµ¿Çϱâ À§ÇÑ ¸î¸î À¯Æ¿¸®Æ¼¼º ÇÔ¼ö¸¦ Á¦°øÇÑ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
serialize(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð 'elementName=elementValue'ó·³ ¿ä¼ÒÀÇ name=value ¦À» ¹Ýȯ
getValue(element)instanceelement: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ¿ä¼ÒÀÇ °ªÀ» ¹Ýȯ

toc

Form.Element.Serializers °´Ã¼

ÀÌ °´Ã¼´Â Æû¿ä¼ÒÀÇ ÇöÀç °ªÀ» °¡Á®¿À±â À§ÇØ ¶óÀ̺귯¸® ³»ºÎÀûÀ¸·Î »ç¿ëµÇ´Â ¸î¸î À¯Æ¿¸®Æ¼¼º ÇÔ¼ö¸¦ Á¦°øÇÑ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
inputSelector(element)instanceelement: radio ¹öưÀ̳ª checkboxó·³ checkedÇÁ¶óÆÛƼ¸¦ °¡Áö´Â form¿ä¼ÒÀÇ °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ['elementName', 'elementValue']ó·³ ¿ä¼ÒÀÇ À̸§°ú °ªÀ» °¡Áö´Â ArrayÀ» ¹Ýȯ
textarea(element)instanceelement: textbox, button ¶Ç´Â passwordÇʵåó·³ valueÇÁ¶óÆÛƼ¸¦ °¡Áö´Â form¿ä¼ÒÀÇ °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð. ['elementName', 'elementValue']ó·³ ¿ä¼ÒÀÇ À̸§°ú °ªÀ» °¡Áö´Â Array¸¦ ¹Ýȯ
select(element)instanceelement: <select> ¿ä¼ÒÀÇ °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð ['elementName', 'selOpt1 selOpt4 selOpt9']ó·³ ¿ä¼ÒÀÇ À̸§°ú ¸ðµç ¼±ÅÃµÈ ¿É¼ÇÀÇ °ªÀ̳ª ÅØ½ºÆ®¸¦ °¡Áö´Â Array¸¦ ¹Ýȯ

toc

Abstract.TimedObserver Ŭ·¡½º

ÀÌ Å¬·¡½º´Â °ªÀÌ º¯°æ(¶Ç´Â ÇÁ¶óÆÛƼ°¡ Ŭ·¡½ºÁ¤ÀǸ¦ ¾ò¾î³»´Â)µÉ¶§±îÁö ÇϳªÀÇ ¿ä¼Ò¸¦ ¸ð´ÏÅ͸µÇÒ ´Ù¸¥ Ŭ·¡½º¸¦ À§ÇÑ ±âº»Å¬·¡½ºÃ³·³ »ç¿ëµÈ´Ù. ÀÌ Å¬·¡½º´Â Ãß»óŬ·¡½ºÃ³·³ »ç¿ëµÈ´Ù.

ÇÏÀ§Å¬·¡½º´Â ¿ä¼ÒÀÇ ÀԷ°ª, styleÇÁ¶óÆÛƼÁß Çϳª, ¶Ç´Â Å×ÀÌºí³» rowÀÇ ¼ö, ¶Ç´Â ´ç½ÅÀÌ ÃßÀûÇϰíÀÚ ÇÏ´Â ¸ðµç°ÍÀ» ¸ð´ÏÅ͸µÇϱâ À§ÇØ »ý¼ºµÉ¼ö ÀÖ´Ù.

¾ò¾î³½ Ŭ·¡½º´Â ¿ä¼Ò³» ¸ð´ÏÅ͸µµÇ´Â ÇöÀç °ªÀ» ¹«¾ùÀÎÁö ÆÇ´ÜÇϱâ À§ÇÑ ¸Þ¼Òµå¸¦ ±¸ÇöÇÏ´Â °ÍÀÌ´Ù.
¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](element, frequency, callback)constructor element: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, frequency: ÃÊ´ÜÀ§ °£°Ý, callback: ¿ä¼Ò°¡ º¯°æµÉ¶§ È£ÃâµÇ´Â ÇÔ¼ö ¿ä¼Ò¸¦ ¸ð´ÏÅ͸µÇÒ °´Ã¼ »ý¼º
registerCallback()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº ¿ä¼Ò ¸ð´ÏÅ͸µ¸ª ½ÃÀÛÇϱâ À§ÇÑ °´Ã¼ ÀÚü¿¡ ÀÇÇØ È£ÃâµÈ´Ù.
onTimerEvent()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº ¿ä¼Ò¸¦ üũÇϱâ À§ÇØ Á¤±âÀûÀ¸·Î °´Ã¼ ÀÚü¿¡ ÀÇÇØ È£ÃâµÈ´Ù.

ÇÁ¶óÆÛƼŸÀÔ»ó¼¼¼³¸í
elementObject ¸ð´ÏÅ͸µµÇ´Â ¿ä¼Ò°´Ã¼
frequencyNumberÀ̰ÍÀº üũ»çÀÌ¿¡ ÃÊ´ÜÀ§ °£°ÝÀ¸·Î ÀÌ·ç¾îÁø´Ù.
callbackFunction(Object, String)¿ä¼Ò°¡ º¯°æµÉ¶§¸¶´Ù È£ÃâµÇ±â À§ÇÑ ÇÔ¼ö. À̰ÍÀº ¿ä¼Ò°´Ã¼¿Í »õ·Î¿î °ªÀ» ¹ÞÀ»°ÍÀÌ´Ù.
lastValueString¿ä¼Ò³» È®ÀεǴ ¸¶Áö¸· °ª

toc

Form.Element.Observer Ŭ·¡½º

Abstract.TimedObserver·Î ºÎÅÍ »ó¼Ó

Æû ÀÔ·Â ¿ä¼ÒÀÇ °ªÀ» ¸ð´ÏÅ͸µÇÏ´Â Abstract.TimedObserverÀÇ ±¸Çö¹°. °ª º¯°æÀ» º¸°íÇÏ´Â À̺¥Æ®¸¦ µå·¯³»Áö ¾Ê´Â ¿ä¼Ò¸¦ ¸ð´ÏÅ͸µÇϰíÀÚ ÇÒ¶§ ÀÌ Å¬·¡½º¸¦ »ç¿ëÇ϶ó. ÀÌ °æ¿ì ´ç½ÅÀº Form.Element.EventObserver Ŭ·¡½º¸¦ ´ë½Å »ç¿ëÇÒ¼ö ÀÖ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](element, frequency, callback)constructor element: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, frequency: interval in seconds, callback: function to be called when the element changes Abstract.TimedObserverÀ¸·ÎºÎÅÍ »ó¼Ó. ¿ä¼ÒÀÇ valueÇÁ¶óÆÛƼ¸¦ ¸ð´ÏÅ͸µÇÒ °´Ã¼¸¦ »ý¼º.
getValue()instance (none) ¿ä¼ÒÀÇ °ªÀ» ¹Ýȯ

toc

Form.Observer Ŭ·¡½º

Abstract.TimedObserver·Î ºÎÅÍ »ó¼Ó

Æû³» µ¥ÀÌÅÍ Ç׸ñ ¿ä¼ÒÀÇ °ªÀÌ º¯°æÇÏ´ÂÁö¸¦ ¸ð´ÏÅ͸µÇÏ´Â Abstract.TimedObserverÀÇ ±¸Çö¹°. ´ç½ÅÀÌ °ª º¯°æÀ» º¸°íÇÏ´Â À̺¥Æ®¸¦ µå·¯³»Áö ¾Ê´Â ¿ä¼Ò¸¦ Æ÷ÇÔÇÏ´Â ÆûÀ» ¸ð´ÏÅ͸µÇϰíÀÚ ÇÒ¶§ ÀÌ Å¬·¡½º¸¦ »ç¿ëÇ϶ó. ÀÌ °æ¿ì ´ç½ÅÀº Form.EventObserver Ŭ·¡½º¸¦ ´ë½Å »ç¿ëÇÒ¼ö ÀÖ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](form, frequency, callback)constructor form: form °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, frequency: ÃÊ´ÜÀ§ °£°Ý, callback: form³» µ¥ÀÌÅÍ Ç׸ñ ¿ä¼Ò°¡ º¯°æµÉ¶§ È£ÃâµÇ´Â ÇÔ¼ö Abstract.TimedObserver·ÎºÎÅÍ »ó¼Ó. º¯°æÇϱâ À§ÇÑ ÆûÀ» ¸ð´ÏÅ͸µÇÒ °´Ã¼ »ý¼º.
getValue()instance (none) ¸ðµç ÆûÀÇ µ¥ÀÌÅÍÀÇ Á÷·ÄÈ­¸¦ ¹Ýȯ

toc

Abstract.EventObserver Ŭ·¡½º

ÀÌ Å¬·¡½º´Â ¿ä¼Ò¸¦ À§ÇØ °ª-º¯°æ À̺¥Æ®°¡ ¹ß»ýÇÒ¶§¸¶´Ù ÄݹéÇÔ¼ö¸¦ ¼öÇàÇÏ´Â ´Ù¸¥ Ŭ·¡½º¸¦ À§ÇÑ ±âº» Ŭ·¡½ºÃ³·³ »ç¿ëµÈ´Ù.

Abstract.EventObserver ŸÀÔÀÇ ´ÙÁß °´Ã¼´Â ´Ù¸¥°ÍÀ» Áö¿ìÁö ¾Ê°í °°Àº ¿ä¼Ò·Î ¹­Àϼö ÀÖ´Ù. ÄݹéÀº ¿ä¼Ò¿¡ ÇÒ´çµÇ´Â ¼ø¼­´ë·Î ¼öÇàµÉ°ÍÀÌ´Ù.

Æ®¸®°Å ÇüÅÂÀÇ À̺¥Æ®´Â radio¹öư°ú checkbox¸¦ À§Çؼ­´Â onclickÀÌ°í ´ë°³ÀÇ textbox¿Í ¸®½ºÆ®¹Ú½º/µå¶ø´Ù¿îÀ» À§Çؼ­´Â onchangeÀÌ´Ù.

¾ò¾î³½ Ŭ·¡½º´Â ¿ä¼Ò³» ¸ð´ÏÅ͸µµÇ´Â ÇöÀç °ªÀ» ¹«¾ùÀÎÁö ÆÇ´ÜÇϱâ À§ÇÑ ¸Þ¼Òµå¸¦ ±¸ÇöÇÏ´Â °ÍÀÌ´Ù.
¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](element, callback)constructor element: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, callback: À̺¥Æ®°¡ ¹ß»ýÇÒ¶§ È£ÃâµÇ´Â ÇÔ¼ö ¿ä¼Ò¸¦ ¸ð´ÏÅ͸µÇÒ °´Ã¼ »ý¼º.
registerCallback()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº ¿ä¼ÒÀÇ À̺¥Æ®¸¦ ÀÚüÀûÀ¸·Î ¹­´Â °´Ã¼¿¡ ÀÇÇØ È£ÃâµÈ´Ù.
registerFormCallbacks()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº Æû³» °¢°¢ÀÇ µ¥ÀÌÅÍ Ç׸ñ ¿ä¼ÒÀÇ À̺¥Æ®·Î ÀÚüÀûÀ¸·Î ¹­±â À§ÇÑ °´Ã¼¿¡ ÀÇÇØ È£ÃâµÈ´Ù.
onElementEvent()instance(none) ÀÌ ¸Þ¼Òµå´Â ´ë°³ ¿ÜºÎÀûÀ¸·Î È£ÃâµÇÁö ¾Ê´Â´Ù. À̰ÍÀº ¿ä¼ÒÀÇ À̺¥Æ®·Î ¹­ÀϰÍÀÌ´Ù.

ÇÁ¶óÆÛƼŸÀÔ»ó¼¼¼³¸í
elementObject ¸ð´ÏÅ͸µµÇ´Â ¿ä¼Ò°´Ã¼
callbackFunction(Object, String)¿ä¼Ò°¡ º¯°æµÉ¶§¸¶´Ù È£ÃâµÇ±â À§ÇÑ ÇÔ¼ö. À̰ÍÀº ¿ä¼Ò°´Ã¼¿Í »õ·Î¿î °ªÀ» ¹ÞÀ»°ÍÀÌ´Ù.
lastValueString¿ä¼Ò³» È®ÀεǴ ¸¶Áö¸· °ª

toc

Form.Element.EventObserver Ŭ·¡½º

Abstract.EventObserver·Î ºÎÅÍ »ó¼Ó

¿ä¼Ò³» °ª º¯°æÀ» °¨ÁöÇϱâ À§ÇÑ Æû µ¥ÀÌÅÍ Ç׸ñ ¿ä¼ÒÀÇ ÀûÀýÇÑ À̺¥Æ®¸¦ À§ÇÑ Äݹé ÇÔ¼ö¸¦ ¼öÇàÇÏ´Â Abstract.EventObserverÀÇ ±¸Çö¹°. ¸¸¾à ¿ä¼Ò°¡ º¯°æÀ» º¸°íÇÏ´Â À̺¥Æ®¸¦ µå·¯³»Áö ¾Ê´Â´Ù¸é, ´ç½ÅÀº Form.Element.Observer Ŭ·¡½º¸¦ ´ë½Å »ç¿ëÇÒ¼ö ÀÖ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](element, callback)constructor element: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, callback: function to be called when the event happens Abstract.EventObserver·Î ºÎÅÍ »ó¼Ó. ¿ä¼ÒÀÇ valueÇÁ¶óÆÛƼ¸¦ ¸ð´ÏÅ͸µÇÒ °´Ã¼ »ý¼º.
getValue()instance (none) ¿ä¼ÒÀÇ °ª ¹Ýȯ.

toc

Form.EventObserver Ŭ·¡½º

Abstract.EventObserver·Î ºÎÅÍ »ó¼Ó

°ªÀÌ º¯°áµÉ¶§ °¨ÁöÇϱâ À§ÇÑ ¿ä¼ÒÀÇ À̺¥Æ®¸¦ »ç¿ëÇÏ¿© Æû³» Æ÷ÇԵǴ ¾î´À µ¥ÀÌÅÍ Ç׸ñ ¿ä¼Ò¿¡ º¯°æÀ» ¸ð´ÏÅ͸µÇÏ´Â Abstract.EventObserverÀÇ ±¸Çö¹°. ¸¸¾à ÆûÀÌ º¯°æÀ» º¸°íÇÏ´Â À̺¥Æ®¸¦ µå·¯³»Áö ¾Ê´Â ¿ä¼Ò¸¦ Æ÷ÇÔÇÑ´Ù¸é, ´ç½ÅÀº Form.Observer Ŭ·¡½º¸¦ ´ë½Å »ç¿ëÇÒ¼ö ÀÖ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
[ctor](form, callback)constructor form: form °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, callback: form³» µ¥ÀÌÅÍ Ç׸ñ ¿ä¼Ò°¡ º¯°æµÉ¶§ È£ÃâµÇ´Â ÇÔ¼ö Abstract.EventObserver·ÎºÎÅÍ »ó¼Ó. º¯°æÀ» À§ÇØ ÆûÀ» ¸ð´ÏÅ͸µÇÒ °´Ã¼ »ý¼º.
getValue()instance (none) ¸ðµç ÆûÀÇ µ¥ÀÌÅÍ Á÷·ÄÈ­¸¦ ¹Ýȯ

toc

Position °´Ã¼ (¿¹ºñ ¹®¼­)

ÀÌ °´Ã¼´Â ¿ä¼Ò À§Ä¡ÇÒ´çÀ» ÀÛ¾÷ÇÒ¶§ µ½´Â ¼ö¸¹Àº ÇÔ¼ö¸¦ Á¦°øÇÑ´Ù.

¸Þ¼ÒµåÁ¾·ùÀÎÀÚ»ó¼¼¼³¸í
prepare()instance(none) ½ºÅ©·Ñ À§Ä¡³» º¯°æÀ» ¼ö¿ëÇϱâ À§ÇÑ deltaX ¿Í deltaY ÇÁ¶óÆÛƼ Á¶Á¤. ÆäÀÌÁö ½ºÅ©·ÑÈÄ withinIncludingScrolloffset¸¦ È£ÃâÇϱâ Àü¿¡ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇÏ´Â °ÍÀ» ±â¾ïÇ϶ó.
realOffset(element)instanceelement: object ¿ä¼Ò¿¡ ¿µÇâÀ» ³¢Ä¡´Â ¾î´À ½ºÅ©·Ñ offset¸¦ Æ÷ÇÔÇÏ´Â ¿ä¼ÒÀÇ Á¤È®ÇÑ ½ºÅ©·Ñ offset¸¦ °¡Áø ArrayÀ» ¹Ýȯ. ÀÌ °á°ú ¹è¿­Àº [total_scroll_left, total_scroll_top]°ú À¯»çÇÏ´Ù.
cumulativeOffset(element)instanceelement: object À§Ä¡°¡ ÇÒ´çµÈ ºÎ¸ð ¿ä¼Ò¿¡ ÀÇÇØ ºÎ°úµÈ ¾î´À offset¸¦ Æ÷ÇÔÇÏ´Â ¿ä¼ÒÀÇ Á¤È®ÇÑ À§Ä¡°¡ ÇÒ´çµÈ offset¸¦ °¡Áø ArrayÀ» ¹Ýȯ. °á°ú ¹è¿­Àº [total_offset_left, total_offset_top]°ú À¯»çÇÏ´Ù.
within(element, x, y)instanceelement: object, x ¿Í y: À§Ä¡ Á¶Á¤ ¸¸¾à ÁÖ¾îÁø ÁöÁ¡ÀÌ ÁÖ¾îÁø ¿ä¼ÒÀÇ Á÷»ç°¢Çü³» Á¶Á¤ÀÌ µÇ´ÂÁö Å×½ºÆ®.
withinIncludingScrolloffsets(element, x, y)instanceelement: object, x and y: coordinates of a point  
overlap(mode, element)instancemode: 'vertical' ³ª 'horizontal', element: object within()Àº ÀÌ ¸Þ¼Òµå°¡ È£ÃâµÇ±â Àü¿¡ È£ÃâµÉ Çʿ䰡 ÀÖ´Ù. ÀÌ ¸Þ¼Òµå´Â ¿ä¼Ò¿¡¼­ °ãÄ¡´Â °ÍÀ» Á¶Á¤ÇÏ´Â ¼¼ºÐÈ­Á¤µµ¸¦ Ç¥ÇöÇÏ´Â 0.0°ú 1.0»çÀÌÀÇ 10Áø¼ö¸¦ ¹ÝȯÇÒ°ÍÀÌ´Ù. ¿¹¸¦ µé¸é, ¸¸¾à ¿ä¼Ò°¡ 100px¸¦ °¡Áö´Â Á¤»ç°¢Çü DIVÀ̰í (300,300)¿¡ À§Ä¡ÇÑ´Ù¸é, within(divSquare, 330, 330); overlap('vertical', divSquare);Àº DIVÀÇ top border·ÎºÎÅÍ 10%(30px)¸¦ °¡¸®Å°´Â °ÍÀ» ÀǹÌÇÏ´Â 0.10À» ¹ÝȯÇÒ°ÍÀÌ´Ù.
clone(source, target)instancesource: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð, target: element °´Ã¼ ¶Ç´Â ¾ÆÀ̵ð source¿ä¼Ò¿¡ ´ëÇØ ¶È°°ÀÌ target¿ä¼ÒÀÇ Å©±â¸¦ ´Ù½Ã Á¶Á¤ÇÏ°í ´Ù½Ã À§Ä¡¸¦ ÁöÁ¤


1.4.0À» À§ÇÑ ÀÌ ¹®¼­´Â ¿©ÀüÈ÷ ÀÛ¾÷ÁßÀÔ´Ï´Ù. ÀÌ ¹®¼­ÀÇ ¾÷µ¥ÀÌÆ®¸¦ °è¼Ó ÁöÄѺÁÁֽʽÿÀ.
¸¸¾à ¿¡·¯¸¦ ¹ß°ßÇÑ´Ù¸é, ³ª¿¡°Ô ¾Ë·ÁÁֽʽÿÀ. ±×·¯¸é °¡´ÉÇÑÇÑ »¡¸® ±×°ÍÀ» ¼öÁ¤ÇÒ°ÍÀÔ´Ï´Ù.
ÇÑ±Û ¹ø¿ª¿¡ °ü·ÃµÈ ºÎºÐÀº Çѱ¹¾î ¹ø¿ªÀÚÀ¸·Î ¾Ë·ÁÁֽʽÿÀ.