Javascript JQuery替换标记

Javascript JQuery替换标记,javascript,jquery,Javascript,Jquery,我有一个contenteditable区域,当用户完成编辑后,我会将数据保存到一个文件中。当用户先使用一个浏览器,然后使用另一个浏览器时,contenteditables创建的不同样式会导致混乱和不兼容的代码 我想知道是否有任何方法可以将Chrome中创建的XXX标记替换为“标准”标记,例如XXX 提前感谢使用: $('span').each(function(){ // iterate to the all the spans if($(this).css("font-weight") =

我有一个contenteditable区域,当用户完成编辑后,我会将数据保存到一个文件中。当用户先使用一个浏览器,然后使用另一个浏览器时,contenteditables创建的不同样式会导致混乱和不兼容的代码

我想知道是否有任何方法可以将Chrome中创建的
XXX
标记替换为“标准”标记,例如
XXX

提前感谢

使用:

$('span').each(function(){ // iterate to the all the spans
  if($(this).css("font-weight") == "bold"){  //
  $(this).contents().unwrap().wrap('<b></b>');​
 }
});
$('span')。每个(函数(){//迭代到所有跨度
如果($(this).css(“字体重量”)==“粗体”){//
$(this.contents().unwrap().wrap(“”);​
}
});

您可以尝试以下方法:

$('span').each(function(){ // iterate to the all the spans
    if($(this).css('font-weight') == 'bold'){  // check if font is bold
       $(this).contents().unwrap().wrap('<b></b>');​ 
    }  // unwrap the content and wrap it
});
$('span')。每个(函数(){//迭代到所有跨度
if($(this).css('font-weight')=='bold'){//检查字体是否为粗体
$(this.contents().unwrap().wrap(“”);​ 
}//打开内容并将其包装
});
所以,这里发生的是:

  • 遍历文档中的所有跨度
  • 检查css样式是否为“粗体”
  • 如果为true,则首先打开它所包含的内容,并用您选择的标签将其包装起来

  • 因此,同样地,您必须单独检查所有其他css样式,并相应地替换/包装它。

    我需要将粗体替换为b标记,下划线替换为u等。我看不出这段代码如何区分这些样式differences@StorySystems:我没有读那部分。现在更新了代码和演示。谢谢,每个命令都需要一个新的if,但应该可以。如果这对您有帮助,我很高兴。