728x90
반응형
asd
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.js"></script> <script> $(document).ready(function(){ // 그룹선택자의 엘리먼트들이 기술된 순서 상관없이 // html요소의 인덱스에 맞춰 오름차순으로 정렬됨. var $searchEles = $('p, span, div.simpletext1'); console.log($searchEles); var resultText =""; resultText = resultText + "엘리먼트 개수: " + $searchEles.length + "\n"; // resultText += "엘리먼트 개수: " + $searchEles.length + "\n"; //같음 // resultText = "엘리먼트 개수: 3\n"; $searchEles.each(function(){ console.log("this : "+this.tagName); console.log("$(this) : "+$(this).prop('tagName')); resultText += $(this).text() + ", "; }); // $.each($searchEles, function(){ // console.log("$(this) : "+$(this).prop('tagName')); // resultText += $(this).text() + ", "; // }); console.log($.trim(resultText)); $searchEles.each(function(i,v){ console.log(i + " : " + $(this).text()); }); }) </script> </head> <body> <span>simple</span> <div class="simpletext1">jQuery</div> <div>basic</div> <p>example</p> </body> </html>
as
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.js"></script> <script> $(function(){ var arr = [ {title: '다음', url: 'www.daum.net'}, {title: '구글', url: 'www.google.com'} ]; //배열은 자동으로 돌려서 실행됨 $.each(arr, function(index, item){ var result = ''; result += index + ' : ' + item.title + ' , ' + item.url; console.log(result); }); console.log("==== The End 1 ===="); $.each($("#menu2 li"), function(i,o){ console.log(i + ":", o); }); console.log("==== The End 2 ===="); }); </script> </head> <body> <h1>탐색 선택자</h1> <ul id="menu1"> <li>내용1-1</li> <li>내용1-2</li> <li>내용1-3</li> </ul> <ul id="menu2"> <li>내용2-1</li> <li>내용2-2</li> <li>내용2-3</li> </ul> </body> </html>
검색
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.js"></script> </head> <body> <form name="frm"> <!-- <form action default="#"> form만 유일하게 네임명. 으로 접근가능 --> <input type="search" name="searchText" placeholder="검색어를 입력해주세요."> <input type="button" value="검색"> </form> <ul> <li>김개똥</li> <li>김말자</li> <li>김말숙</li> <li>김개똥</li> <li>김말자</li> <li>김말숙</li> <li>김개똥</li> <li>김말자</li> <li>김말숙</li> <li>김개똥</li> <li>김말자</li> <li>김말숙</li> </ul> <script> let searchInput = frm.searchText; let str; let tempStr =''; $(searchInput).on('keydown',function(e){ if(e.keyCode == 13){ $("input[type=button]").click(); // input type='search'에서 엔터하는 경우 form의 action실행이 안 되도록 막기 e.preventDefault(); // return false; } }); $("input[type=button]").click(function(){ str = searchInput.value; if(tempStr == '') tempStr = str; if(tempStr != str) $("ul > li").show(); if(str == ''){ $("ul > li").show(); $(searchInput).focus(); } else { $("ul > li").filter(function(i,o){ if(o.innerText.indexOf(str) < 0) return true; else return false; }).css("display","none") } }); </script> </body> </html>
;
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.js"></script> <style> em { font-size: 20pt; line-height: 20pt; margin: 20px; color: blue; } </style> <script> var colorArr = ['yellow','red','orange']; $(document).ready(function(){ $('p em').css('background-color', function(i){ return colorArr[i]; }).each(function(){ $('.result1').append($(this).text()+" "); }); $('div > em').css('background-color','pink').each(function(){ $('.result2').append($(this).text()+" "); }); }); </script> </head> <body> <p><em>one</em><em>two</em><span><em>three</em></span></p> <div><em>four</em><span><em>five</em></span><em>six</em></div><hr> <div> <span>ancestor descendant로 검색된 엘리먼트:</span> <span class="result1"></span> </div> <div> <span>parent > child로 검색된 엘리먼트:</span> <span class="result2"></span> </div> </body> </html>
join
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.js"></script> <script> $(function(){ var result = new Array(); var result2 = new Array(); console.log('$("b").parents(): ', $("b").parents()); $("b").parents().each(function(i){ // result[i] = this.tagName; result[i] = $(this).prop('tagName'); }); // reverse() : 배열의 순서를 역순으로 가져오기 // join("구분 문자열")함수 : 배열 요소값을 '구분 문자열'로 연결하여 문자열 값으로 반환. // 인수값이 있을 경우 기본적으로 '구분 문자열'로 추가됨. // 연결값이 없을 경우(예:마지막 연결값", ") '구분 문자열' 적용되지 않음. // result => [span, p, div, body, html] $("b").append(result.join(", ")); // result.reverse() = > ['HTML', 'BODY', 'DIV', 'P', 'SPAN'] // $("b").append(result.reverse().join(", ")); $("em").parent().each(function(i, o){ result2[i] = this.tagName; }); $("em").append(result2.join(", ")); }); </script> </head> <body> <div> <!-- span < p < div < body < html --> <p><span><b>부모 엘리먼트 모두 검색: </b></span></p> </div> <div> <p><span><em>부모 엘리먼트 검색: </em></span></p> </div> </body> </html>
$.map()
$.grep()
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.js"></script> <script> $(function(){ /* 형식: $.map(배열객체, 콜백함수); - 해당 배열객체에서 값을 받아 콜백함수를 통해 반환받은 값으로 새로운 배열을 만든다. 콜백함수(callback) : 매개변수로 함수를 전달하는 것을 말하며, 전달받은 함수를 함수의 내부에서 실행시킨다. */ var arr1 = $.map([5,7,2], function(n){ return n + 4; }); document.write("arr1배열: " + arr1); document.write("<br>==== first End ==== <br><br>"); // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 var arr2 =[1,9,3,8,6,1,5,9,4,7, 3, 8, 6, 9, 1]; // 형식: $.grep(배열객체, function(요소, 인덱스){return Boolean값;}); // $.grep() 함수는 배열 요소를 조건에 따라 필터링하여 제거한다. // 이 조건은 함수로 구성되고 배열의 요소와 인덱스를 인자로 갖는다. // 즉, 특정 로직에 의해 true가 되는 결과들만 반환됨. var arr3 = jQuery.grep(arr2, function(n, i){ return (n > 5 && i > 4); //9, 7, 8, 6, 9 }); document.write("arr3배열: " + arr3); document.write("<br>==== Second End ===="); }); </script> </head> <body> </body> </html>
728x90
반응형
'[JS]' 카테고리의 다른 글
animation fadeIn(), fadeOut(), fadeToggle() (0) | 2024.03.08 |
---|---|
on (0) | 2024.03.07 |
prop(), attr(), map방식 (0) | 2024.03.06 |
[jQuery] slice(), find(), filter(), remove(), replace(), empty() (0) | 2024.03.06 |
[JS] jQuery ㅇㅇㅇ (0) | 2024.03.06 |