对不起,奇怪的标题,我不知道如何表达这个问题。基本上,我想知道是否可以打开一个新窗口并从前端用 HTML 填充它,而不是编写实际路由、数据库调用等。(是的,超级懒惰。)沿着这些思路思考......
var html = '<!DOCTYPE html><body><h1>Y HALO THAR</h1></body>'
window.open(html);
我只是在这里许愿吗?这甚至可能吗?
对不起,奇怪的标题,我不知道如何表达这个问题。基本上,我想知道是否可以打开一个新窗口并从前端用 HTML 填充它,而不是编写实际路由、数据库调用等。(是的,超级懒惰。)沿着这些思路思考......
var html = '<!DOCTYPE html><body><h1>Y HALO THAR</h1></body>'
window.open(html);
我只是在这里许愿吗?这甚至可能吗?
编辑此答案不再有效,因为实施了阻止某些URI的安全功能。data:
请参阅打开新选项卡/窗口并向其写入内容?工作答案
可以选择使用dataurl ...
window.open('data:text/html,<!DOCTYPE html><body><h1>Y HALO THAR</h1></body>');
以下 Web 浏览器当前支持数据 URI:
您需要做的第一件事是让弹出窗口有一个变量 -
var popup = window.open('blankPage.html');
var html = '<!DOCTYPE html><body><h1>Y HALO THAR</h1></body>';
popup.document.write(html);
建议执行以下操作
window.open('data:text/html,<!DOCTYPE html><body><h1>Y HALO THAR</h1></body>');
由于“数据:”津贴的折旧,不再适用于 Chrome。
如果您以前使用过这个,您的代码现在将打开一个空白窗口。