【发布时间】:2015-05-30 00:07:22
【问题描述】:
各位 Stackers,我的目的是使用 iframe 将私有 Google Doc 嵌入网页中,以便其内容仅加载给已在 Google Doc 上明确共享的用户。
为此,我想使用以下链接 (https://docs.google.com/feeds/download/documents/Export?exportFormat=html&format=html&id=[MyGoogleDocID]) 将 Google Doc 导出为 .html。然后,上帝保佑,使用 JavaScript 在 iframe 中呈现导出的 .html 文件。
我是 JavaScript 新手,但我一直在使用以下代码(慷慨 recommended by John)来强制 iframe 中的嵌入式超链接在新窗口中打开...所以加载下载的 .html 的任务文件似乎在 JavaScript 的能力范围内:
<iframe id="myframe" srcdoc="" style="width: 600px; height: 500px; border: 0" frameborder="0"></iframe>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script>
$(function() {
$.get("https://docs.google.com/document/d/[MyGoogleSpreadsheetID]/pub?embedded=true", function(html) {
$("#myframe").attr("srcdoc", html);
setTimeout(function() {
$("#myframe").contents().find('a[href^="http://"]').attr("target", "_blank");
$("#myframe").contents().find('a[href^="https://"]').attr("target", "_blank");
}, 1000);
});
});
</script>
与往常一样,我们将不胜感激任何见解!
【问题讨论】:
-
您查看过 JavaScript 错误控制台吗?如果那里没有抱怨违反同源政策的错误,我会感到惊讶。
-
一个很好的问题,先生,不,我的 Google Chrome 控制台显示没有任何错误。 (注意:我希望我在新窗口中打开 iframe 链接的这段 JavaScript 代码不会混淆我原来的问题。我只是将它包括在内,以说明为什么我认为 JavaScript 最终可能会提供解决方案。)跨度>
标签: javascript html iframe google-docs