検索

ホームページ  >  に質問  >  本文

window.open() と data を使用して計算ドキュメントを開きます: スキーム

ブラウザで実行される、計算された HTML ドキュメントを生成する Web ページがあり、それを新しいブラウザ タブで開きたいと考えています。

簡単で汚い方法はこれを行うことです:

リーリー

とてもシンプルです。しかし、これには私が気に入らない厄介な結果がいくつかあります。つまり、新しいタブの URL は のどこか を指す必要がありますが、新しいドキュメントは動的に計算されるため、 を指す がありません。 URL を指定しない場合は、Web ページの URL が使用されます。そのため、誰かが生成されたドキュメントを含むタブを更新すると、ドキュメントは消え、代わりに Web ページの新しいインスタンスが読み込まれます。これによりユーザーが混乱する可能性があります。

私のニーズにより適しているのは、データ URI を使用することだと思います。 Web ページのコンテンツ全体を URI 自体にエンコードし、window.open() を使用して URI を開きます。これは醜いですが、意味的には私の目標、つまりページ更新時に誤って移動できない自己完結型の計算ドキュメントと一致しています。

私は、次のように非常にシンプルだと思うこの概念を構築しました。

リーリー

このコードを実行すると、新しいウィンドウが画面上で 1 フレーム点滅し、すぐに閉じます。エラーは発生しませんでした。

私は何を間違えたのでしょうか?

P粉752479467P粉752479467260日前618

全員に返信(1)返信します

  • P粉085689707

    P粉0856897072024-04-07 09:10:30

    どうやら、すべての最新のブラウザは意図的かつ明示的に、このようなデータ URI の使用を 阻止しているようです。素晴らしい。

    黒板のもう 1 つのチェックマークは、「私が必要としていた完璧なものが、最近私たちから奪われました。」です。良い。

    プラスの面としては、これにより、私が望むすべてのことが改善されるようです:

    リーリー

    返事
    0
  • キャンセル返事