我可以使用javascript从div中的HTML创建新网页吗?

我可以使用javascript从div中的HTML创建新网页吗?,javascript,Javascript,我有一个网页,允许用户为小部件选择一些选项,然后根据这些选项动态生成示例HTML。HTML被放在页面上的一个div中,这样用户就可以看到它的外观,并根据自己的意愿将其复制/粘贴到自己的网站上 我想添加一个“查看此示例页面”链接,它在一个新窗口中打开,并具有来自div的示例HTML,以便可以立即看到该示例的实际操作 有没有办法用javascript/jquery做到这一点?您实际上可以使用window.open方法,保存对已打开窗口的引用,然后对其进行写入 var exampleWin=wind

我有一个网页,允许用户为小部件选择一些选项,然后根据这些选项动态生成示例HTML。HTML被放在页面上的一个div中,这样用户就可以看到它的外观,并根据自己的意愿将其复制/粘贴到自己的网站上

我想添加一个“查看此示例页面”链接,它在一个新窗口中打开,并具有来自div的示例HTML,以便可以立即看到该示例的实际操作


有没有办法用javascript/jquery做到这一点?

您实际上可以使用window.open方法,保存对已打开窗口的引用,然后对其进行写入

var exampleWin=window.open(“,”示例”);
var docMarkup=“测试”+
“你好,世界。

”; 例如win.document.write(docMarkup); //如果愿意,以后还可以执行exampleWin.close()

尝试在浏览器的开发人员工具控制台中粘贴上述代码。

您实际上可以使用window.open方法,保存对已打开窗口的引用,然后写入

var exampleWin=window.open(“,”示例”);
var docMarkup=“测试”+
“你好,世界。

”; 例如win.document.write(docMarkup); //如果愿意,以后还可以执行exampleWin.close()

尝试将上述代码粘贴到浏览器的开发人员工具控制台中。

实现最终目标的常用方法有点不同。您有一个web服务器在
/code
(或类似位置)侦听
GET
请求,它根据查询字符串构造并响应相应的HTML。例如,您可以请求
/code?color=blue

构建文档是web服务器的设计目标。这种方法允许您利用缓存策略,与更广泛的用户身份验证和授权系统集成,等等

要向用户显示源代码,只需输入适当的URL并将内容放入标记中即可。要显示呈现的小部件,请使用其
src
为相同URL的


如果您真的想让它成为一个新窗口,请使用URL而不是iframe。但是要小心弹出窗口拦截器。

通常实现最终目标的方法有点不同。您有一个web服务器在
/code
(或类似位置)侦听
GET
请求,它根据查询字符串构造并响应相应的HTML。例如,您可以请求
/code?color=blue

构建文档是web服务器的设计目标。这种方法允许您利用缓存策略,与更广泛的用户身份验证和授权系统集成,等等

要向用户显示源代码,只需输入适当的URL并将内容放入标记中即可。要显示呈现的小部件,请使用其
src
为相同URL的


如果您真的想让它成为一个新窗口,请使用URL而不是iframe。但是要小心弹出窗口拦截器。

如果它是完整的html(包括标题和html标记),您可能需要使用iframe,否则jQuery将是非常有可能的。你有任何代码来显示你已经尝试过的东西吗?它是完整的HTML。一个iframe我可以看到它将如何工作,但我希望它在一个新的窗口理想。我没有任何代码,因为当它在新窗口中时,我甚至不知道从何处开始(我可以在现有窗口中使用document.write轻松地完成它,但这没有帮助)。如果它是完整的html(包括标题和html标记),您可能需要使用iframe,否则jQuery将非常有用。是的,这是可能的。你有任何代码来显示你已经尝试过的东西吗?它是完整的HTML。一个iframe我可以看到它将如何工作,但我希望它在一个新的窗口理想。我没有任何代码,因为当它在新窗口中时,我甚至不知道从何处开始(我可以在现有的窗口中使用document.write轻松地完成它,但这并没有帮助)。这正是我想要的!谢谢:)有趣的是,我注意到浏览器加载符号一直在新窗口上旋转,直到我点击停止。如果我刷新,它会自动停止。知道为什么会这样吗?我现在已经将代码上传到了生产环境中,这样你就可以在下滚动到底部并单击“将使用所选选项的示例HTML”旁边的“视图”了。我发现了如何使用exampleWin.document.close()进行加载;这正是我想要的!谢谢:)有趣的是,我注意到浏览器加载符号一直在新窗口上旋转,直到我点击停止。如果我刷新,它会自动停止。知道为什么会这样吗?我现在已经将代码上传到了生产环境中,这样你就可以在下滚动到底部并单击“将使用所选选项的示例HTML”旁边的“视图”了。我发现了如何使用exampleWin.document.close()进行加载;
var exampleWin = window.open("", "example");
var docMarkup = "<!doctype html><html><head><title>test</title></head>" + 
"<body><p>Hello, world.</p></body></html>";
exampleWin.document.write(docMarkup);
// later you can also do exampleWin.close() if you wish