나는 다음과 같은 HTML에게에만<span>
태그로 텍스트를 포장하는 방법 다른 태그를 남기고 div 내에서 텍스트를 줄 바꿈하는 방법은 무엇입니까?
<p><img src="" /> some text</p>
. 선택기는 독특한 이미지와 일치하는 경우 최종 결과는
<p><img src="" /><span>some text</span></p>
나는 다음과 같은 HTML에게에만<span>
태그로 텍스트를 포장하는 방법 다른 태그를 남기고 div 내에서 텍스트를 줄 바꿈하는 방법은 무엇입니까?
<p><img src="" /> some text</p>
. 선택기는 독특한 이미지와 일치하는 경우 최종 결과는
<p><img src="" /><span>some text</span></p>
을해야한다,이 그것을 할 것입니다 :
$("selector").html($("<span/>", { text: $("selector").text() });
그것을 여러 요소를 일치하는 경우에 .each()
를 사용해야합니다 그것들 각각을 개별적으로 처리한다; 시체는 위의 것입니다 $("selector")
$(this)
로 바뀝니다.
당신은
$('p').contents().filter(function(){
return this.nodeType == 3
}).wrap('<span/>')
데모를 시도 할 수 있습니다 : Fiddle 당신이 프레임 워크를 사용하거나하지 않는 여부에 따라 그 일을 여러 가지 방법이 있습니다
. 본질적으로 당신이 바닐라 js, 평범한 구식 js로 그것을 할 수있는 방법입니다.
var ps = document.getElementsByTagName('p');
var text = ps[0].innerText;
ps[0].innerHTML = ps[0].innerHTML.replace(text, '<span>' + text + '</span>');
에도 유용
$(function(){
$('p').text(function(i, oldText){
return oldText;
}).wrap("<span>");
});
var text = $('p').text();
var img = $('p img').attr('src');
$('p').html('').append('<img src="'+img+'" /><span>'+text+'</span>');