我有一个WYSIWIG编辑器位于0TM.CO,我目前正在实施YouTube视频功能。
问题在于,只要用户按下“发布”按钮,YouTube嵌入就会消失,引擎会处理该页面,就好像嵌入的内容从未出现过一样。
处理发布的JS代码:
$("#publish").click(function () {
saveAll();
var e = $("display").html();
var t = '<form id="parse" action="engine.php" method="post"><input type="hidden" name="html" value="' + encodeURIComponent(e) + '"><input type="hidden" name="buttons" value="' + buttons + '"><input type="hidden" name="contents" value="' + contents + '"></form>';
$("display").html($("display").html() + t);
$("#parse").submit()
});
功能saveAll:
function saveAll() {
$("#title-holder").attr("id", "title");
$("#subtitle-holder").attr("id", "subtitle");
$("#title").text($("#set-title").val());
$("#subtitle").text($("#set-subtitle").val());
for (var e = 0; e < buttons; e++) {
$("#btn-" + e + "-holder").attr("id", "btn-" + e);
$("#btn-" + e).attr("val", $("#set-btn-" + e).val());
if (validateURL($("#set-btn-" + e).val())) {
$("#btn-" + e).attr("fhref", $("#set-btn-" + e).val());
$("#btn-" + e).attr("ftarget", "_blank");
$("#btn-" + e).attr("class", "btn btn-primary");
$("#btn-" + e).text($("#set-btn-" + e).val().replace(/.*?:\/\//g, ""))
} else {
$("#btn-" + e).text($("#set-btn-" + e).val())
}
}
for (var e = 0; e < contents; e++) {
if ($("#content-edit-" + e).length) {
$("#content-" + e).attr("onclick", "contentEdit(" + e + ")");
$("#content-" + e).attr("content", $("#content-edit-" + e).val());
$("#content-" + e).html($("#content-edit-" + e).val().replace(/(?:http:\/\/)?(?:www\.)?(?:youtube\.com|youtu\.be)\/(?:watch\?v=)?(.+)/g, '<iframe class="complimentary" width="420" height="345" src="http://www.youtube.com/embed/$1" frameborder="0" allowfullscreen></iframe>'))
}
}
}
我对StackOverflow比较新,对不起,如果我在这里做错了。