The following div contains some text and tags. I want to add <span>
tag to every letter in the div.
<div id="text">Hello, <span class="name">John</span></div>
I need my output as below:
<div id="text">
<span>H</span>
<span>e</span>
<span>l</span>
<span>l</span>
<span>o</span>
<span>,</span>
<span class="name">J</span>
<span class="name">o</span>
<span class="name">h</span>
<span class="name">n</span>
</div>
or
<div id="text">
<span>H</span>
<span>e</span>
<span>l</span>
<span>l</span>
<span>o</span>
<span>,</span>
<span class="name">
<span>J</span>
<span>o</span>
<span>h</span>
<span>n</span>
</span>
</div>
Guys most of your reply says that I haven't tried anything. For all you I have solution if the dosn't exist in the code. I have done the below even before posting the question.
<div id="text">Hello, John</div>
Answer:
<div id="text">
<span>H</span>
<span>e</span>
<span>l</span>
<span>l</span>
<span>o</span>
<span>,</span>
<span>J</span>
<span>o</span>
<span>h</span>
<span>n</span>
</div>
Javascript used:
var obj=$('#text');
var text=obj.text();
text=text.split("");
var parsed="";
obj.empty();
for(var i=0; i<text.length; i++)
{
var tag=document.createElement('span');
tag.setAttribute('class','vtag');
tag.innerHTML=text[i];
obj.append(tag);
}