用Javascript或PHP替换部分HTML字符串


Replace part of HTML string with Javascript or PHP

我需要替换显示YouTube视频的HTML标记的一部分:

<div class="pretty-embed" data-pe-videoid="IL5AbXBqzwk" data-pe-fitvids="true">&nbsp;</div>

与YouTube图像的直接链接,同时保留在数据pe视频ID属性中定义的ID:

<img src="http://img.youtube.com/vi/YiF7e7m2jPo/sddefault.jpg">

如果我把它分成两部分,我需要更换

<div class="pretty-embed" data-pe-videoid="

带有

<img src="img.youtube.com/vi

" data-pe-fitvids="true">&nbsp;</div>

带有

/sddefault.jpg">

我正在寻找一个使用PHP或jQuery/villary JavaScript的解决方案。我试着用PHP&正则表达式,但没有成功。

如有任何帮助,我们将不胜感激。

使用jQuery向每个div添加/附加图像的解决方案,因为它不清楚"替换html的一部分"的含义:

(function($) {
  $(function() {
    $('[data-pe-videoid]').each(function() {
      var el = $(this);
      // append img
      el.append($('<img src="http://img.youtube.com/vi/' + el.data('pe-videoid') + '/sddefault.jpg">'));
    });
  });
})(jQuery);

替换而非附加:

el.replaceWith($('<img src="http://img.youtube.com/vi/' + el.data('pe-videoid') + '/sddefault.jpg">'));