ajax

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Ex07_ajax_json.html</title>
<style>
    td {
        border: 1px solid gray;
    }
</style>
<script src="../js/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
    $(function(){
        $.ajax({
            url:"item.json",
            dataType:"json",
            success:function(data){ // 성공했을때 테이블 가져옴
                $('#treeData').append("<tr>" +
                        "<td>id</td>" + 
                        "<td>name</td>" + 
                        "<td>price</td>" + 
                        "<td>description</td>" + 
                        "</tr>");

                $.each(data, function(){
                    $('#treeData').append("<tr>" +
                            "<td>"+this.id +"</td>" + 
                            "<td>"+this.name+"</td>" + 
                            "<td>"+this.price+"</td>" + 
                            "<td>"+this.description +"</td>" + 
                            "</tr>");
                })//each
            }
        })
    })
</script>
</head>
<body>
	<h3>과일의 특성 조사 자료</h3>
	<table id="treeData"></table>
</body>
</html>

 

 

 

getJSON

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">

<title>Ex06_getJSON.html</title>
<style>
    td {
        border: 1px solid gray;
    }
</style>
<script src="../js/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
/* json을 테이블로 가져오기 */	
/* function(data)data < - 변수 아무거나 작성 */
$(function(){
        $.getJSON("item.json", function(data){
            //alert(data)
            $('#treeData').append("<tr>" +
                    "<td>id</td>" + 
                    "<td>name</td>" + 
                    "<td>price</td>" + 
                    "<td>description</td>" + 
                    "</tr>");
            // 변수는 따옴표 X
            $(data).each(function(){
            $('#treeData').append("<tr>" +
                    "<td>"+this.id +"</td>" + 
                    "<td>"+this.name+"</td>" + 
                    "<td>"+this.price+"</td>" + 
                    "<td>"+this.description +"</td>" + 
                    "</tr>");
            })// each
    })//getJSON
})//ready
</script>
</head>
<body>
 <h3>과일의 특성 조사 자료</h3>  
 <h6></h6>
	<table id="treeData">
	
	
	</table>
</body>
</html>

 

get

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Ex09_get.html</title>
<style>
    td {
        border: 1px solid gray;
    }
</style>
<script src="../js/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
    $(function(){
        $.get("item.xml", function(data){
            //alert(data);
            $('#treeData').append("<tr>" +
                    "<td>id</td>" + 
                    "<td>name</td>" + 
                    "<td>price</td>" + 
                    "<td>description</td>" + 
                    "</tr>");

            // attr : 속성접근
            // price는 item의 자손이므로 find로 price의 text불러오기
            $(data).find('item').each(function(){
                $('#treeData').append('<tr>'+					
                        '<td>'+ $(this).attr("id") +'</td>'+
                        '<td>'+ $(this).attr("name")+'</td>'+
                        '<td>'+ $(this).find("price").text()+'</td>'+
                        '<td>'+  $(this).find("description").text()+'</td>'						
                        +'</tr>')

            })//each
        })//get
    })
</script>
</head>
<body>
	<table id="treeData"></table>
</body>
</html>

<!-- 
XML 형태 // 가장 많으 사용하는건 ajax

<item id="1" name="레몬">
		<price>3000</price>
		<description> 레몬에 포함되어 있는 쿠엔산은 피로회복에 좋다. 비타민C도 풍부하다. </description>
</item>
 -->

 

 

📌 jQuery Ajax – 화면 일부 갱신하기

Ajax(Asynchronous JavaScript and XML)는 웹 페이지 전체를 새로고침하지 않고,

일부분만 비동기적으로 갱신할 수 있게 해줍니다.
jQuery에서는 $.ajax() 메서드를 통해 이를 간단히 구현할 수 있습니다.


 

✅ 예제 코드 설명

1. menu1 클릭 시

$('#menu1').click(function (e) {
    $.ajax({
        url: "menu.html",         // 불러올 파일
        dataType: "html",         // 데이터 타입
        success: function (data) {
            $('#message1').html("성공<br>" + data); 
        },
        error: function () {
            alert("실패");
        }
    });
});
 
  • menu.html 파일을 가져와서
  • #message1 영역에 그대로 출력합니다.
  • 성공 여부를 표시하기 위해 "성공<br>" 텍스트를 앞에 추가했습니다.

 
 
 
2. menu2 클릭 시
 
 
 
 
<!DOCTYPE html>
<html>
<head>
	<meta charset="UTF-8">
	<title>Ex05_ajax.html</title>
	<style type="text/css">
		div {
			width: 200px;  height: 300px;
			margin: 3px;  float: left;
		}
		
	</style>
	<script type="text/javascript" src="../js/jquery.js" ></script>
	<script type="text/javascript">
	// 화면의 일부분만 변경
	$(function () {
    $('#menu1').click(function (e) {
         // a 태그 기본 동작 방지
        $.ajax({
            url: "menu.html",
            dataType: "html",
            success: function (data) {
                $('#message1').html("성공<br>" + data);
            },
            error: function () {
                alert("실패");
            }
        });
    });
    $('#menu2').click(function (e){
    	$.ajax({
    	   	url : "menu.html",
        	dataType : "html",
        	success:function(data){
        		// 성공했을때 객체로 만들어서 함수를 적용하여 자손(li)출력
        		$('#message2').html($(data).find('li')); 
        	},
        	error:function(){
        		alert('실패');
        	}
    	})
    });
});
		
		
	</script>
</head>
<body>

<!-- 
id : 입력 : 입력칸    형식이 맞지않습니다.
pw : 입력 : 입력칸 	  형식이 맞지않습니다.
등등 중복된 아이디를 출력하는데에 사용
 -->

<!-- clear:left 를 이용해서 div를 왼쪽에 붙여출력 되는걸 막아 아래쪽에 출력됨. -->
	<div>
		<a href="#" id="menu1">메뉴 보기 1</a><p>
		<span id="message1"></span>
	</div>
	<div>
		<a href="#" id="menu2">메뉴 보기 2</a><p>
		<span id="message2"></span>
	</div>	
	<div style="clear:left"> 
		<h3>ajax 예제입니다.</h3>
	</div>
</body>
</html>

 

📝 정리

  • Ajax를 활용하면 페이지 전체 새로고침 없이 일부만 업데이트 가능
  • menu1 → 불러온 HTML 전체 출력
  • menu2 → 특정 태그(<li>)만 골라서 출력

 

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<script type="text/javascript" src="../js/jquery.js"></script>
<script type="text/javascript" src="../js/jquery.magnify-1.0.2.js"></script> 
<script type="text/javascript">
	$(function(){
		// magnify() : 확대
		// 작은 이미지에 링크를 걸고 클릭하면 큰 이미지로 이동
		$("#mg").magnify();
	});
</script>

<body>
	<!-- 똑같은 큰 이미지를 a링크에 넣어야 같은 이미지를 확대해서 볼 수 있다. -->
	<a href="../images/bigimg0.jpg" id ="mg"> 
	<img src ="../images/smallimg0.jpg" border="2">
	</a>
</body>
</html>

 

📌 jQuery – .animate()를 활용한 이미지 슬라이드

jQuery의 .animate() 메서드를 사용하면 CSS 속성을 애니메이션 효과로 자연스럽게 변경할 수 있습니다.
이번 예제에서는 좌우 버튼 클릭 시 이미지가 슬라이드처럼 이동하는 기능을 구현했습니다.

 


✅ 핵심 기능

  1. 왼쪽 버튼 (.leftbtn)
    • 이미지를 왼쪽으로 이동
    • marginLeft 값을 감소시켜 화면에 다음 이미지를 보여줌
  2. 오른쪽 버튼 (.rightbtn)
    • 이미지를 오른쪽으로 이동
    • marginLeft 값을 증가시켜 이전 이미지를 보여줌
  3. 인덱스 변수 i
    • 현재 이미지의 위치를 기록
    • i == 1 → 마지막 이미지에 도달
    • i == -1 → 첫 번째 이미지에 도달

 

✅ 코드 설명

$(function(){
    i = -1; // 위치 인덱스 (처음 상태)
    
    // 왼쪽 버튼 클릭 → 다음 이미지
    $('.leftbtn').bind('click', function(){
        if(i == 1){ // 마지막 이미지면
            alert('마지막 이미지 입니다.');
            return;
        }
        $('#firstimage').animate({marginLeft:'-=205px'}, 2000); 
        i++; // 인덱스 증가
    });
    
    // 오른쪽 버튼 클릭 → 이전 이미지
    $('.rightbtn').click(function(){
        if(i == -1){ // 첫 번째 이미지면
            alert('첫번째 이미지 입니다.');
            return;
        }
        $('#firstimage').animate({marginLeft:'+=205px'}, 2000);
        i--; // 인덱스 감소
    });
});

✅ 주요 포인트

  • .animate({속성: 값}, 시간)
    → 특정 속성을 지정한 시간(ms) 동안 애니메이션 효과로 변경
  • marginLeft:'-=205px'
    → 현재 margin-left에서 205px만큼 왼쪽으로 이동
  • marginLeft:'+=205px'
    → 현재 margin-left에서 205px만큼 오른쪽으로 이동

✅ 전체 코드

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Ex07_animate.html</title>
    <style>
        #region { 
            width: 200px; height:200px;
            overflow:hidden; margin:auto;
        }
        #images{
            width: 600px; height: 200px;
        }
        #images a img { 
            width:200px; height:200px; 
        }
        #direction {
            width: 360px; margin:auto;
        }
        .leftbtn{margin-top:10px;} 
        .rightbtn{margin-left:290px; margin-top:10px;}
    </style>
    <script type="text/javascript" src="../js/jquery.js"></script>
    <script type="text/javascript">
    $(function(){
        i = -1;
        $('.leftbtn').bind('click', function(){
            if(i==1){
                alert('마지막 이미지 입니다.');
                return;
            }
            $('#firstimage').animate({marginLeft:'-=205px'}, 2000);
            i++;
        });
        
        $('.rightbtn').click(function(){
            if(i==-1){
                alert('첫번째 이미지 입니다.');
                return;
            }
            $('#firstimage').animate({marginLeft:'+=205px'}, 2000);
            i--;
        });
    });
    </script>
</head>
<body>
    <div id="region">
        <div id="images">
            <a href="#"><img src="../images/b.jpg" id="firstimage" /></a> 
            <a href="#"><img src="../images/c.jpg" id="secondimage" /></a>
            <a href="#"><img src="../images/d.jpg" id="thirdimage" /></a>
        </div>
    </div>
    <div id="direction">
        <button class="leftbtn">&laquo;</button>
        <button class="rightbtn">&raquo;</button>
    </div>
</body>
</html>

📝 정리

  • .animate()는 CSS 속성을 부드럽게 변경할 수 있는 메서드.
  • += / -=를 사용하면 현재 값 기준으로 이동 가능.
  • 인덱스 변수를 활용하면 첫 번째/마지막 이미지 제한 처리 가능.

 

'▶ JavaScript&JQuery' 카테고리의 다른 글

12. JQuery _ ajax 예제  (0) 2025.09.09
11. JQuery _ .magify(); 확대  (0) 2025.09.09
09. jQuery_ .show() 와 .hide() 사용  (1) 2025.09.09
08. jQuery_change()  (1) 2025.09.09
07. jQuery_bind()  (1) 2025.09.09

📌 jQuery – .show() 와 .hide() 사용하기

jQuery에서는 HTML 요소를 손쉽게 보이거나 숨길 수 있는 메서드를 제공합니다. 이번 예제에서는 버튼 클릭을 통해 텍스트(<span>)를 제어하는 방법을 살펴봅니다.


✅ 주요 메서드

  1. .show()
    • 선택한 요소를 보이게 합니다.
    • 인자로 시간을 주면 애니메이션 효과로 점점 나타납니다.
    • show(5000) → 5초 동안 서서히 보이기
  2. .hide()
    • 선택한 요소를 숨깁니다.
    • 인자로 시간을 주면 점점 사라지는 애니메이션 효과를 줍니다.
  3. 콜백 함수 (callback)
    • 애니메이션이 끝난 후 실행할 작업을 지정할 수 있습니다.
    • 예) .show(5000, function(){ $(this).css('background','yellow'); });

✅ 코드 설명

$(document).ready(function(){
    // 첫 번째 버튼: 보이기
    $('button:eq(0)').click(function(){
        $('span:first').show();   // 즉시 보이기
    });
    
    // 두 번째 버튼: 숨기기
    $('button:eq(1)').click(function(){
        $('span:first').hide();   // 즉시 숨기기
    });
    
    // 세 번째 버튼: 천천히 보이기 + 콜백으로 배경색 변경
    $('button:eq(2)').click(function(){
        $('span:eq(1)').show(5000, function(){
            $(this).css('background','yellow'); // 5초 후 노란색 배경
        });
    });
});

✅ 전체 코드

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Ex01_show_hide.html</title>
    <style>
        span { display:none } /* 처음엔 숨김 */
    </style>
    <script type="text/javascript" src="../js/jquery.js"></script>
    <script type="text/javascript">
    $(document).ready(function(){
        // 첫 번째 버튼: 보이기
        $('button:eq(0)').click(function(){
            $('span:first').show();
        });
        
        // 두 번째 버튼: 숨기기
        $('button:eq(1)').click(function(){
            $('span:first').hide();
        });
        
        // 세 번째 버튼: 천천히 보이기 + 배경색
        $('button:eq(2)').click(function(){
            $('span:eq(1)').show(5000, function(){
                $(this).css('background','yellow');
            });
        });
    });
    </script>
</head>
<body>  
    <button>Show It</button> <button>Hide It</button> 
    <span>안녕하세요.</span> <br> 
    
    <button>Show It slow</button> <button>Hide It slow</button>  
    <span>반갑습니다.</span><br>
    
    <button>Show/Hide</button> 
    <span>또 만나요</span>
</body>
</html>

 


✅ 실행 결과

  1. 첫 번째 버튼 → "안녕하세요." 보임
  2. 두 번째 버튼 → "안녕하세요." 숨김
  3. 세 번째 버튼 → "반갑습니다."가 5초에 걸쳐 나타나고, 끝나면 배경이 노란색으로 바뀜

📝 정리

  • .show() → 요소 보이기 (애니메이션 가능)
  • .hide() → 요소 숨기기 (애니메이션 가능)
  • 콜백 함수를 활용하면 애니메이션 종료 후 추가 작업도 가능

'▶ JavaScript&JQuery' 카테고리의 다른 글

11. JQuery _ .magify(); 확대  (0) 2025.09.09
10. Jquery_ .animate()를 활용한 이미지 슬라이드  (0) 2025.09.09
08. jQuery_change()  (1) 2025.09.09
07. jQuery_bind()  (1) 2025.09.09
06. JQuery_ .empty() 와 .remove()  (0) 2025.09.09

jQuery change 이벤트 예제 (드롭다운 선택 시 이미지 변경)

이번에는 jQuery의 change 이벤트를 활용해서
드롭다운에서 선택한 값에 따라 이미지를 바꾸는 예제를 만들어 보았습니다.


📌 change 이벤트란?

  • <select>, <input>, <textarea> 등의 값이 변경될 때 발생하는 이벤트입니다.
  • 사용자가 드롭다운에서 옵션을 선택하거나, 입력창의 값이 바뀔 때 자동으로 실행됩니다.

기본 문법

$('#요소id').change(function(){
    // 값이 변경되었을 때 실행할 코드
});

📌 예제 1: ch5 Ex07_change.html

<!DOCTYPE html>
<html>
<head>
	<meta charset="UTF-8">
	<title>Ex07_change.html</title>
	<style type="text/css">
		img { 
			width: 80px; height: 80px; margin-left: 50px;		
		}
	</style>
	<script type="text/javascript" src="../js/jquery.js"></script>
	<script type="text/javascript">
	// id="sel" 요소의 값이 바뀌었을 때(change 이벤트 발생)
	$(function(){
		$('#sel').change(function(){
			// 현재 선택된 option의 value 값을 가져옴
			let imgSrc = $(this).val();
			// img 태그의 src 속성을 변경
			$('#img').attr('src','../images/' + imgSrc);
		}); 
	});
	</script>
</head>
<body>

<form name="frm">
<table> 
    <tr>
        <td>
            <select id="sel">
                <option value="strawberry.gif">딸기</option>
                <option value="banana.gif">바나나</option>
                <option value="apple.gif" selected>사과</option>
            </select>
        </td>
        <td>
        <img id="img">
    </td>
</tr>
</table>
</form>

</body>
</html>

📌 실행 흐름

    1. 사용자가 드롭다운에서 과일 이름을 선택한다.
    2. change 이벤트 발생 → $(this).val() 로 선택된 옵션의 value 가져오기.
      • 예: "딸기" 선택 → "strawberry.gif" 값 반환
    3. $('#img').attr('src', '../images/' + imgSrc) 실행 → 이미지 변경
      • 결과: <img> 태그에 ../images/strawberry.gif 가 표시됨.

📌 실행 결과 (예시)

  • "딸기" 선택 → 🍓 딸기 이미지 표시
  • "바나나" 선택 → 🍌 바나나 이미지 표시
  • "사과" 선택 → 🍎 사과 이미지 표시

 

📌 jQuery bind() 메서드 정리

✅ 1. 개념

  • bind()는 jQuery에서 이벤트를 요소에 연결(바인딩) 할 때 사용하는 메서드입니다.
  • 하나의 요소에 여러 이벤트를 동시에 묶어서 처리할 수 있습니다.
  • jQuery 3.0 이후로는 on() 메서드로 대체되었으며, bind()는 구버전에서 주로 사용됩니다.
	$(function(){
		cnt = 0;
		// bind : 묶다. 엮어주다. 이어주다
		$('img').bind({ // 두개의 이벤트를 묶어줌
			'mouseover' : function(){ // 마우스 올릴때
				$('img').attr('src', "../images/but2.gif")
				cnt++;
				if(cnt==5)
					$('img').unbind();
			},
			mouseout : function(){ // 마우스를 내릴때
				$('img').attr('src', "../images/but1.gif")
				cnt++;
				if(cnt==5)
					$('img').unbind();
			}
		})	
	})

 

 

  • mouseover → 마우스를 올리면 이미지 변경
  • mouseout → 마우스를 내리면 원래 이미지로 변경
  • 이벤트가 5번 발생하면 unbind()로 이벤트 해제

 


✅ 2. 기본 문법

$(선택자).bind(이벤트, 이벤트핸들러);

 

여러 이벤트를 한 번에 바인딩

$(선택자).bind({
    이벤트1 : function(){ ... },
    이벤트2 : function(){ ... }
});

 


✅ 4. bind() 특징

  1. 여러 이벤트를 한 번에 묶을 수 있음
    → 코드가 간결해짐
  2. **이벤트 해제는 unbind()**로 가능
  3. jQuery 3.0 이상에서는 더 이상 권장되지 않음
    → 최신 문법은 on() / off() 사용

 

📌 jQuery – .empty() vs .remove()

jQuery에서는 DOM 요소를 삭제할 때 두 가지 대표적인 메서드가 있습니다:

.empty().remove(). 비슷해 보이지만 동작은 다릅니다.

 


✅ 1. .empty()

  • 선택한 요소 내부의 자식 요소만 모두 제거합니다.
  • 요소 자체(<div>)는 남아 있기 때문에, 이후에 다시 내용을 추가할 수 있습니다.
$('#btnEmpty').click(function(){
    $('div').empty();          // div 안의 내용만 삭제
    $('div').append("<b>Hi!!</b>"); // 다시 내용 추가 가능
});

 

👉 결과: 

<div> 박스는 유지되고 안에 들어있던 <p> 태그들이 사라집니다. 그리고 "Hi!!"가 새로 들어갑니다.

 

 

✅ 2. .remove()

  • 선택한 요소 자체를 DOM에서 완전히 제거합니다.
  • 요소 자체가 없어지기 때문에, 그 이후에는 jQuery로 다시 접근할 수 없습니다.
$('#btnRemove').click(function(){
    $('div').remove();         // div 자체를 삭제
    $('div').append("<b>Hi!!</b>"); // ❌ 이미 삭제돼서 실행 안 됨
});

 

👉 결과:
<div> 태그 자체가 사라지므로, 이후에 $('div')를 다시 불러도 더 이상 존재하지 않아 아무 동작도 하지 않습니다.

 


✅ 차이점 한눈에 정리

메서드  설명   요소 자체 유지 여부 이후 내용 추가 가능 여부
.empty() 자식 요소만 제거 O (남음) O (가능)
.remove() 요소 자체 삭제 X (없어짐) X (불가능)

 

예제 코드

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Ex11_empty_remove.html</title>
<style type="text/css">
div {
	background-color: Yellow;
	width: 30%;
}
</style>
<script type="text/javascript"  src="../js/jquery.js"></script>
<script type="text/javascript">
	$(document).ready(function(){
		$('#btnEmpty').click(function(){
			$('div').empty(); // div 비우기
			$('div').append("<b>Hi!!<b>")
		})
		
		$('#btnRemove').click(function(){
			$('div').remove(); // div 영구삭제
			$('div').append("<b>Hi!!<b>")
			
		})
	})

</script>
</head>
<body>
	<div> 
		<p>jQuery</p>
		<p>Ajax</p>
	</div>
	<input type="button" id="btnEmpty" value="영역의 내용 삭제" />
	<br />
	<input type="button" id="btnRemove" value="영역 자체를 삭제" />
</body>
</html>

📌 jQuery에서 children() vs find() 차이 정리

$(document).ready(function(){
	$('button').click(function(){
			
		/* 자식 접근할 떄 .children함수 */
		$('div').children().css('border-bottom', '3px solid blue')
			
		/* 자손에 접근할 때 find, 자손의 클래스를 넣어야함 */
		$('div').find('.selected').css('color', 'orange')
			
		/* 모든자손 : * 작성 */
		$('div').find('*').css('color', 'orange')
	})
 })

 

 

✅ 정리

  • .children() → 직계 자식만 선택
  • .find(선택자) → 모든 자손 중에서 특정 요소 선택
  • .find('*') → 모든 자손 요소 전부 선택

 

📌 jQuery에서 parent() vs parents() 차이 정리

$(document).ready(function(){
	$('button').click(function(){
		// span의 바로 위 부모에 빨간테두리
		$('span').parent().css('border-bottom', '2px solid red') 
		// 모든 조상 접근하여 폰트 바꿈
		$('span').parents().css('font-style', 'italic') 
	})
})

 

✅ 정리

  • .parent() → 직계 부모만 선택
  • .parents() → 모든 조상 선택

 

📌 jQuery로 엘리먼트 속성(Attribute) 제어하기

✅ 사용된 메서드

  • .attr("속성명", "값") : 속성 설정
  • .attr({속성1:값1, 속성2:값2}) : 여러 속성 한 번에 설정
  • .attr("속성명") : 속성 값 가져오기
  • .removeAttr("속성명") : 속성 제거
  • .css("속성", "값") : CSS 직접 적용
  • .append(내용) : 기존 요소 끝에 내용 추가

 


<script type="text/javascript">
	$(document).ready(function(){
		// document영역에 준비가 되었을때 이미지 출력
		// 첫번째 이미지
		$('img:eq(0)').attr("src", "./../images/im0.jpg")
						.attr('title','귀여운 강아지')
						.attr('alt', 'puppy1')
						.css('border', '3px solid red')
		
		$('img:eq(1)').attr({
						src : "./../images/im1.jpg",
						title : '귀여운강아지2',
						alt : 'puppy2'
						})	
						.css({
							"border" : '5px double blue',
							 padding : "20px"
						})
						
						
		$('#btn1').click(function(){
			// 버튼 클릭시 0번 이미지 타이틀삭제
			$('img:eq(0)').removeAttr('title') 
			$('img:eq(0)').css('border', '6px dashed green')		
		})
		// append 추가
		// 작업대상 객체로 만들고 함수적용, alt속성 가져와서 div span에 추가
		// attr에 속성 이름만 넣어주면됨
		$('div span').append($('img:eq(0)').attr('alt'))
	});
	
	</script>

✅ 코드 해설

1. 첫 번째 이미지 속성/스타일 지정

$('img:eq(0)')
  .attr("src", "./../images/im0.jpg")
  .attr("title", "귀여운 강아지")
  .attr("alt", "puppy1")
  .css("border", "3px solid red");

 

  • img:eq(0) → 첫 번째 <img> 선택
  • src, title, alt 속성 설정
  • border CSS 적용

 

2. 두 번째 이미지 속성/스타일 지정 (객체 형태)

$('img:eq(1)').attr({
  src : "./../images/im1.jpg",
  title : "귀여운강아지2",
  alt : "puppy2"
})
.css({
  "border" : "5px double blue",
  padding : "20px"
});

 

  • attr({ ... }) → 여러 속성을 한 번에 설정
  • css({ ... }) → 여러 스타일 한 번에 적용

 

3. 버튼 클릭 시 속성 제거

$('#btn1').click(function(){
  $('img:eq(0)').removeAttr('title');
  $('img:eq(0)').css('border', '6px dashed green');
});

 

 

 

  • 첫 번째 이미지의 title 속성 제거
  • border 스타일 변경

 

4. 속성 값 가져오기 & 추가

$('div span').append($('img:eq(0)').attr('alt'));

 

+ Recent posts