2010-05-21 2 views
1

<i>의 모든 인스턴스가 <em>으로 변경되는 jquery 설정을 만들려고합니다. 그것은으로 쉽게 할 충분 :jquery로 속성을 유지하면서 요소 이름 바꾸기

$("i").each(function(){ 
    $(this).replaceWith($('<em>' + this.innerHTML + '</em>')); 
}); 

하지만 제가 문제 파악을 데하는 것은 모든 <i> 태그를 변경할 수 있지만, 각 사람에게 각각의 특성을 유지하는 방법이다. 그래서 만약 내가 <i style="background-color: #333;" alt="Example" title="Example">Example Text</i>으로 변경하고 싶습니다. <em style="background-color: #333;" alt="Example" title="Example">Example Text</em>

어떤 도움을 주셔서 감사합니다!

답변

0

$ (이) .attributes 간단하다 : 어쩌면이 질문에 도움이 모든 인스턴스에 대해 i 태그의 모든 속성을 가져올 것입니다. 단순히 replace 함수에 넣으십시오.

나는 어떻게 기능을 가지고 놀 수 있을지 모르지만, 나의 지식 코드에서 이런 식으로 될 것이다.

$("i").each(function(){ 
var attribute = $(this).attributes(); 
$(this).replaceWith($('<em'+attributes+'>' 

this.innerHTML + + ')); }});

희망이 있습니다.

+0

jQuery에는 * 속성 * 메소드가 없습니다 ... – James