.data
방법은 data-
HTML 속성을 변경하지 않습니다; jQuery가 내부적으로 저장하는 변수를 변경합니다.
당신이 정말로 data-
속성을 변경하려면 /해야 할 경우
의
.attr()
방법으로 이렇게 명시 적으로 수행
$(el).attr('data-original-title', str);
그러나이 .data
에 의해 반환되는 값을 변경하지 않습니다. jQuery는 data-
HTML 속성 에서 그 값을 가져오고 내부적으로 저장된 값을 찾을 수없는 경우에만 가져옵니다. HTML 속성을 변경 한 후 $(el).data('original-title')
을 다시 검색하면 변경되지 않았 음을 알 수 있습니다.
이 경우이 문제가되는 경우 .removeData()
메서드를 사용하여 내부 저장된 값을 삭제하십시오. 다음 번에 .data()
을 사용하면 jQuery는 그 문자가 누락되었음을 확인하고 data-
HTML 속성을 검색합니다. http://jsfiddle.net/mblase75/LHCUK/
HTML :
<p id="p" data-title="blah"></p>
jQuery를 :
console.log($('#p').data('title')); // returns "blah"
// alter the attribute directly
$('#p').attr('data-title','whooo'); // data-title="whooo"
// test if .data is changed
console.log($('#p').data('title')); // still returns "blah"
// delete the .data() value
$('#p').removeData('title');
// now fetch it again -- it will retrieve the new data- attribute
console.log($('#p').data('title')); // returns "whooo"
이제 실제로, 당신은 걱정 할 필요가 없습니다
보세요 이. data-
속성은 초기 변수의 값을 나타내며 해당 변수의 값이 현재 일 필요는 없습니다. 그러면 괜찮을 것입니다. 요약
:.data()
방법은 HTML 요소에서 값을 검색하는 문서를로드하고, 변수가 내부에 저장되어있는 한 그렇게 다시하지 않을 것이다 번.
['.data'] (http://api.jquery.com/data) 메소드는'data-'HTML 속성을 변경하지 않습니다; jQuery가 내부적으로 저장하는 변수를 변경합니다. – Blazemonger
이 질문에 답변하는 데 필요한 정보가 충분하지 않습니다. Utilities.ApplyTooltips는 무엇을합니까? 마크 업은 어떤 모습입니까? – Joe
조금 더 많은 문맥이 도움이 될 것입니다. '데이터'는 어떻게 생겼고'ApplyTooltips'는 어떤 역할을합니까? –