Chain

2023. 7. 27. 21:58ใ†jquery

Chain?

jQuery์˜ ๋ฉ”์†Œ๋“œ๋“ค์€ ๋ฐ˜ํ™˜๊ฐ’์œผ๋กœ ์ž๊ธฐ ์ž์‹ ์„ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ทœ์น™์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.

์ด๋ฅผ ์ด์šฉํ•˜๋ฉด ํ•œ๋ฒˆ ์„ ํƒํ•œ ๋Œ€์ƒ์— ๋Œ€ํ•ด์„œ ์—ฐ์†์ ์ธ ์ œ์–ด๊ฐ€ ๊ฐ€๋Šฅ.

 

์žฅ์  : 

์ฝ”๋“œ๊ฐ€ ๊ฐ„๊ฒฐ

์ธ๊ฐ„์˜ ์–ธ์–ด์™€ ์œ ์‚ฌํ•ด์„œ ์‚ฌ๊ณ ์˜ ์ž์—ฐ์Šค๋Ÿฌ์šด ๊ณผ์ •๊ณผ ์ผ์น˜.

 

ex) ์•„๋ž˜ a ํƒœ๊ทธ์˜ ์†์„ฑ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋Š” ์ฝ”๋”ฉ

<a id="tutorial" href="http://jquery.com" target="_self">jQuery</a>

 

1.jQuery๋ฅผ ์ด์šฉ

                    //href ์†์„ฑ๊ฐ’ ๋ณ€๊ฒฝ                 ํƒ€๊ฒŸ ์†์„ฑ๊ฐ’ ๋ณ€๊ฒฝ     
jQuery('#tutorial').attr('href', 'http://jquery.org').attr('target', '_blank').css('color', 'red');

๋ž˜ํผ์˜ context๊ฐ€ ์œ ์ง€๊ฐ€ ๋จ!

jquery ๋ฉ”์†Œ๋“œ๋Š” ์ž์‹ ์„ return ํ•˜๊ธฐ ๋•Œ๋ฌธ์— (์—ฌ๋Ÿฌ๊ฐœ์˜ ์„œ์ˆ ์–ด๊ฐ€ ๊ฐ€๋Šฅํ•œ ๊ฒƒ๊ณผ ๊ฐ™์Œ)

 

2.js์˜ DOM ์ด์šฉ

var tutorial = document.getElementById('tutorial');
tutorial.setAttribute('href', 'http://jquery.org');
tutorial.setAttribute('target', '_blank');
tutorial.style.color = 'red';

๊ณ„์†ํ•ด์„œ tutorial์„ ์„ ํƒํ•ด์ค˜์•ผ ํ•จ > ์ฝ”๋“œ ๊ธธ์–ด์ง

 

 

ํƒ์ƒ‰(traversing)

chain์˜ ๋Œ€์ƒ์„ ๋ฐ”๊ฟ”์„œ ์ฒด์ธ์„ ๊ณ„์† ์—ฐ์žฅ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•

์ฃผ์˜! ๋„ˆ๋ฌด ๋ณต์žกํ•œ chain์€ ๊ฐ€๋…์„ฑ ์ €ํ•˜

 

<ul class="first">
    <li class="foo"> list item 1 </li>
    <li> list item 2 </li>
    <li class="bar"> list item 3 </li>
</ul>
<ul class="second">
    <li class="foo"> list item 1 </li>
    <li> list item 2 </li>
    <li class="bar"> list item 3 </li>
</ul>

ํƒ์ƒ‰ ๋ฉ”์†Œ๋“œ ์‚ฌ์šฉ

		//find(์ธ์ž) ๋ฉ”์†Œ๋“œ - ์ฃผ์–ด์ง„ ๋ž˜ํผ ul์˜ ์ž์‹ ์ค‘ class foo ์ฐพ๋Š” ๊ฒƒ
$('ul.first').find('.foo').css('background-color', 'red').end().find('.bar').css('background-color', 'green');
							//end() ๋ฉ”์†Œ๋“œ : ๋งˆ์ง€๋ง‰ traverse ์ทจ์†Œ(find ๋ฉ”์†Œ๋“œ) ๋‹ค์‹œ ul.first๋กœ ์ „ํ™˜

 

'jquery' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

Mainpulation(์—˜๋ฆฌ๋จผํŠธ ์ œ์–ด)  (0) 2023.07.28
event  (0) 2023.07.28
์„ ํƒ์ž  (0) 2023.07.27
wrapper  (0) 2023.07.27
jquery ๊ธฐ์ดˆ  (0) 2023.07.27