3

奇妙なタイトルについて申し訳ありませんが、質問の言い回しがわかりません。基本的に、実際のルートやdb呼び出しなどをコーディングするのではなく、新しいウィンドウを開いてフロントエンドからHTMLで埋めることができるかどうか疑問に思っていました(うん、非常に怠惰です)。

var html = '<!DOCTYPE html><body><h1>Y HALO THAR</h1></body>'

window.open(html);

私はここで星を望んでいますか?これも可能ですか?

4

3 に答える 3

5

特定のURIをブロックするセキュリティ機能が実装されているため、この回答の編集は機能しなくなりました。data:

新しいタブ/ウィンドウを開いて何かを書き込むを参照してください。実用的な答えのために

dataurlを使用するオプションがあります...

window.open('data:text/html,<!DOCTYPE html><body><h1>Y HALO THAR</h1></body>');

データURIは現在、次のWebブラウザでサポートされています。

  • FirefoxおよびMozillaFoundationのGeckoレンダリングエンジンを使用するすべてのブラウザ
  • Safari、Chrome、その他のWebKitベースのブラウザ
  • オペラ
  • Konqueror
  • Internet Explorer 8以降(特定の制限付き)
于 2013-01-23T16:12:28.747 に答える
5

最初に行う必要があるのは、ポップアップに変数を持たせることです-

var popup = window.open('blankPage.html');
var html = '<!DOCTYPE html><body><h1>Y HALO THAR</h1></body>';

popup.document.write(html);
于 2013-01-23T16:13:00.710 に答える
3

次のことを行うための提案

window.open('data:text/html,<!DOCTYPE html><body><h1>Y HALO THAR</h1></body>');

'data:'の許容量が減価償却されたため、Chromeでは機能しなくなりました。

https://developers.google.com/web/updates/2017/03/chrome-58-deprecations#remove_content-initiated_top_frame_navigations_to_data_urls

以前にこれを使用した場合、コードは代わりに空白のウィンドウを開きます。

于 2017-10-12T17:19:12.577 に答える