attr() 메서드는 jquery에서 요소 속성을 가져오고 설정하는 데 사용됩니다. attr은 속성의 약어입니다. Attr()은 jQuery DOM 작업에서 자주 사용됩니다.
1. attr(속성 이름) //속성 값 가져오기(첫 번째로 일치하는 요소의 속성 값을 가져옵니다. 이 방법을 사용하면 첫 번째로 일치하는 요소에서 속성 값을 쉽게 가져올 수 있습니다. 요소가 그렇지 않은 경우) 해당 속성이 있으면 정의되지 않은 값을 반환합니다. )
2. attr(속성 이름, 속성 값) //속성 값을 설정합니다. (일치하는 모든 요소에 대해 속성 값을 설정합니다.)
3. attr(속성명, 함수값) //속성의 함수값을 설정합니다. (일치하는 모든 요소에 대해 계산된 속성값을 설정합니다. 값을 제공하지 않고 함수를 제공하며, 이에 의해 계산된 값은 함수는 속성 값입니다. )
4. attr(properties) //지정된 요소에 대해 여러 속성 값을 설정합니다. 즉, {속성 이름 1: "속성 값 1", 속성 이름 2: "속성 값 2", ... .. .}. (이것은 일치하는 모든 요소에 걸쳐 많은 속성을 일괄적으로 설정하는 가장 좋은 방법입니다. 객체의 클래스 속성을 설정하려면 속성 이름으로 'className'을 사용해야 합니다. 또는 'class'를 직접 사용할 수 있습니다. 또는 '아이디' )
샘플 코드:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>jquery中attr()方法</title> <script src="js/jquery-1.4.2.min.js" language="javascript" type="text/javascript" ></script> <style> p{color:red} li{color:blue;} .lili{font-weight:bold;color:red;} #lili{font-weight:bold;color:red;} </style> </head> <body> <p title="你最喜欢的水果是。">你最喜欢的水果是?</p> <ul> <li title="苹果汁">苹果</li> <li title="橘子汁" alt="123">橘子</li> <li title="菠萝汁">菠萝</li> </ul> <script> ... </script> </body> <html>
1.attr(name)//속성 값 가져오기
1.1 attr(name)을 사용하여 제목 값을 가져옵니다.
<script> alert($("ul li:eq(1)").attr("title")); </script>
결과: 오렌지 주스를 보여주세요
1.2 attr(name)을 사용하여 대체 값을 가져옵니다.
<script> alert($("ul li:eq(1)").attr("alt")); </script>
결과:
123개 표시
2. attr(name,value) //속성값 설정
2.1 attr(name,value)를 사용하여 제목 값을 Don't eat oranges
로 수정합니다.
<script> $("ul li:eq(1)").attr("title","不吃橘子"); alert($("ul li:eq(1)").attr("title")); </script>
결과:
오렌지 먹지 말라는 쇼
3. attr(name,fn) //속성의 함수값을 설정합니다
3.1 alt 속성의 값을 title 속성의 값으로 설정합니다.
<script> $("ul li:eq(1)").attr("title",function(){ return this.alt}); alert($("ul li:eq(1)").attr("title")); </script>
결과:
123개 표시
4.attr(properties) //"이름/값" 형태의 객체를 일치하는 모든 요소의 속성으로 설정
4.1
<script> $("ul li:eq(1)").attr({title:"不喝橘子汁",alt:"不是123"}); alert($("ul li:eq(1)").attr("title")); alert($("ul li:eq(1)").attr("alt")); </script>
결과:
2를 보는데, 123이 아니라 오렌지 주스를 마시지 마세요
4.2
<script> $("ul li:eq(1)").attr({className:"lili"}); </script>
결과:
4.3
<script> $("ul li:eq(1)").attr({id:"lili"}); </script>
결과:
4.4
<script> $("ul li:eq(1)").attr({style:"color:red"}); </script>
결과:
li에 alt를 추가하는 것은 잘못되었습니다. img, 영역 및 입력 요소(애플릿 요소 포함)에서만 사용할 수 있습니다. 입력 요소의 경우 alt 속성은 제출 버튼 이미지를 대체하기 위한 것입니다. 여기서는 attr() 메소드를 자세히 설명하기 위해 적합한 속성이 없으므로 alt를 예시로 사용합니다. attr() 메소드 사용법을 학습하고 참고하기 위한 용도로만 사용됩니다.
alt와 tite의 차이점은 다음과 같습니다.
alt: 그래픽을 설명하는 데 사용되는 텍스트입니다. 그림을 표시할 수 없는 경우 그림 대신 이 텍스트가 표시됩니다. 마우스를 이미지 위로 이동하면 텍스트도 표시됩니다.
제목: 마우스를 올렸을 때 표시되는 텍스트입니다.
그럼 속성을 삭제하는 방법은 무엇인가요?
jquery에서 속성을 삭제하는 키워드는 다음과 같습니다. A는 대문자로 표시됩니다.
사용법과 동일한 HTML 코드에서 li의 제목 속성을 삭제하고 싶습니다. 그러면 다음과 같습니다.
<script> $("ul li:eq(1)").removeAttr("title"); </script>
매우 간단합니다. attr은 실제로 네이티브 js에서 getAttribute를 단순화한 구현이고, RemoveAttr은 RemoveAttribute의 약어입니다.
그럼 attr()과 비슷한 속성이 있나요?
jquery의 val()도 비슷합니다.
$(this).val(); $(this).attr("value")에 해당하는 요소 노드의 값을 가져옵니다.
$(this).val(value); $(this).attr("value",value)에 해당하는 요소 노드의 값을 설정합니다.