使用jquery更新文本节点

时间:2012-04-19 22:25:58

标签: jquery

我有这个HTML:

<span class="msg-container">
  <span class="msg"></span>
  A message here
</span>

我想使用jQuery查找所有的msg-container元素,点击“此处的消息”文本并设置title属性并删除“此处的消息”文本节点。

因此,执行后,我的DOM应如下所示:

<span class="msg-container" title="A message here">
  <span class="msg"></span>
</span>

我如何实现这一目标?

3 个答案:

答案 0 :(得分:1)

我认为你需要使用for-each函数

 $(".msg-container").each(function(){
       var child =  $(this).children(".msg").html();
       var text=$(this).html("");
        $(this)attr("title" , text) 
        $(this).append(child);
      });

答案 1 :(得分:1)

尝试

$(function()  {
    $(".msg-container").each(function() {
        var txt = $(this).text();
        var children = $(this).children();
        $(this).attr("title",txt.trim())
            .text("").append(children);
    });
});

答案 2 :(得分:1)

 $('.msg-container').each(function(){
      var that = $(this);
      that.attr('title', that.text());
      var children = that.find('.msg').clone();
      that.html('').append(children);
 });