제이쿼리 .data()

· 8년 전 · 2051

제이쿼리 .data()


일치 된 요소와 관련된 임의의 데이터를 저장하거나 일치하는 요소 집합의 첫 번째 요소에 대해 명명 된 데이터 저장소에 값을 반환합니다.



.data( key, value )

설명 : 일치하는 요소와 관련된 임의의 데이터를 저장합니다.



.data (obj)


유형 : 개체

업데이트 할 키 - 값 쌍의 객체입니다


이 .data()방법을 사용하면 순환 참조 나 메모리 누수로부터 안전하게 DOM 요소에 모든 유형의 데이터를 첨부 할 수 있습니다.


하나의 요소에 대해 여러 개의 고유 한 값을 설정하고 나중에 검색 할 수 있습니다.


$( "body" ).data( "foo", 52 );

$( "body" ).data( "bar", { myType: "test", count: 40 } );

$( "body" ).data( { baz: [ 1, 2, 3 ] } );

$( "body" ).data( "foo" ); // 52

$( "body" ).data(); // { foo: 52, bar: { myType: "test", count: 40 }, baz: [ 1, 2, 3 ] }

jQuery 1.4.3에서 요소의 데이터 객체 설정은 .data(obj)이전에 해당 요소와 함께 저장된 데이터 를 확장합니다.


jQuery 1.4.3 (jQuery 1.4에서 시작) 이전에이 .data()메소드는 데이터 객체를 확장하는 대신 모든 데이터를 완전히 대체했습니다. 타사 플러그인을 사용하는 경우 요소의 데이터 객체를 완전히 바꾸지 않는 것이 좋습니다. 플러그인에서 데이터를 설정할 수도 있기 때문입니다.


jQuery 3 은이 메소드의 동작을 변경하여 Dataset API 사양 에 맞 춥니 다 . 특히, jQuery 3 은 Dataset API의 알고리즘 정의에 따라 대문자 버전의 문자로 소문자 ASCII 문자 다음에 오는 "-"(U + 002D)의 두 문자 시퀀스를 변환 합니다 . 같은 성명을 쓰는 것은 $( "body" ).data( { "my-name": "aValue" } ).data();돌아올 것 { myName: "aValue" }입니다.


브라우저가 플러그인 및 외부 코드와 상호 작용하는 방식으로 인해 .data()메소드 <object>(Flash 플러그인이 아닌 경우) <applet>또는 <embed>요소를 사용할 수 없습니다 .


추가 참고 사항 :


Internet Explorer에서는 expando 속성을 통해 데이터를 첨부 할 수 없으므로이 방법은 현재 XML 문서의 데이터 설정을위한 크로스 플랫폼 지원을 제공하지 않습니다.

undefined데이터 값으로 인식되지 않습니다. 이와 같은 호출 .data( "name", undefined )은 호출 된 jQuery 객체를 반환하여 체인을 허용합니다.

예:

그런 다음 저장소는 div 요소에서 값을 검색합니다.




<!doctype html>

<html lang="en">

<head>

  <meta charset="utf-8">

  <title>data demo</title>

  <style>

  div {

    color: blue;

  }

  span {

    color: red;

  }

  </style>

  <script src="https://code.jquery.com/jquery-1.10.2.js"></script>

</head>

<body>

 

<div>

  The values stored were

  <span></span>

  and

  <span></span>

</div>

 

<script>

$( "div" ).data( "test", { first: 16, last: "pizza!" } );

$( "span:first" ).text( $( "div" ).data( "test" ).first );

$( "span:last" ).text( $( "div" ).data( "test" ).last );

</script>

 

</body>

</html>

|
댓글을 작성하시려면 로그인이 필요합니다. 로그인

개발자팁

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
jQuery 8년 전 조회 1,417
jQuery 8년 전 조회 1,669
jQuery 8년 전 조회 1,680
jQuery 8년 전 조회 1,549
jQuery 8년 전 조회 1,649
jQuery 8년 전 조회 1,729
jQuery 8년 전 조회 1,627
jQuery 8년 전 조회 1,636
jQuery 8년 전 조회 1,823
jQuery 8년 전 조회 1,334
jQuery 8년 전 조회 2,122
jQuery 8년 전 조회 1,580
jQuery 8년 전 조회 1,777
jQuery 8년 전 조회 1,763
jQuery 8년 전 조회 2,052
jQuery 8년 전 조회 1,979
jQuery 8년 전 조회 1,483
jQuery
[jQuery]
8년 전 조회 1,950
PHP 8년 전 조회 6,941
jQuery 8년 전 조회 2,596
jQuery 8년 전 조회 1,632
jQuery 8년 전 조회 1,713
jQuery 8년 전 조회 1,855
jQuery 8년 전 조회 1,344
jQuery 8년 전 조회 1,900
jQuery 8년 전 조회 1,655
jQuery 8년 전 조회 1,941
jQuery 8년 전 조회 2,003
jQuery 8년 전 조회 1,623
jQuery 8년 전 조회 1,635
🐛 버그신고