我必须处理用户可能嵌入YouTube视频的WISIWYG内容。
我需要在任何iframe中搜索输出WISIWYG的容器,然后将该iframe包装在<div class="video-wrapper">
标记中。这是我试过的:
$('div.content').each(function () {
var iframe = $(this).find('iframe');
$('<div class="video-wrapper">').insertBefore(iframe);
$('</div>').insertAfter(iframe);
});
这不起作用,最终只会在iframe之前添加div
(包括结束标记)。
想法?
答案 0 :(得分:4)
您应该使用$.wrap
。请参阅:http://api.jquery.com/wrap/
$('div.content').each(function () {
$(this).find('iframe').wrap('<div class="video-wrapper"></div>');
});
答案 1 :(得分:3)
使用wrap
- 您无法像这样添加部分HTML,它无效:
var iframe = $(this).find('iframe');
iframe.wrap("<div class='video-wrapper' />");