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

ブラウザが HTML 要素をレンダリングしようとする前に、HTML 要素をスクランブルします。これは「document.write」のまれな有効な使用例ですか?

Web ページにタイトル領域があり、そこをループする背景画像がいくつかあります。

これらは少し解像度が高く、スクロールせずに見える範囲にあるため、ブラウザーが最初の画像以外の画像の読み込みを開始しないようにします。

しかし、画像の順序もランダム化したいと考えています。

問題は、静的 Web ホスト (Netlify) を使用していることです。

私が検討したいくつかのアプローチ:

私がやりたいのは、ブラウザーが HTML 応答全体を確認する前に、JS コードを実行し、短いロジックを実行し、ストリームにマークアップを追加することです。その後、JS をオフにしている人や、JS を実行したくない検索エンジンに対して、

それはまさに document.write が行うことですよね。

すべての情報源は、疫病のような document.write を避けるようにと言っています。しかし、これはまれな有効な使用例ではないでしょうか?

リーリー

これは悪い考えですか?なぜ?私の願いを達成するためのもっと良い方法はありますか?

P粉752290033P粉752290033283日前430

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

  • P粉349222772

    P粉3492227722024-01-11 16:07:11

    はい、これは良い考えではありません。このメソッドは非常に古いものであり、ブラウザごとに動作が異なる可能性があります。詳細については、https://developer.mozilla.org/en-US/docs/Web/API/Document/write を参照してください。

    次のような最新の方法を使用してください:

    ###等。これらはレンダラー/ブラウザーセーフであるため、要素をランダムに配置します。

    ただし、特定の使用例に対する提案: ブラウザーが希望どおりに動作するには、最初に JavaScript をロードする必要がありますが、それが行われない可能性があります。画像は、HTML ソースに最初に表示された順序で読み込まれている可能性があります。可能であれば、このロジックをサーバーに移動することをお勧めします。

    最終的には、どの Javascript もあなたのユースケースでは機能しない可能性があります。ドキュメント自体に画像を含めずに、JS 経由で (ランダムロードで) 追加することも可能かもしれません。これが私の好みのアプローチです。

    返事
    0
  • キャンセル返事