javascript - jqueryのload()同期ブロックについて
天蓬老师
天蓬老师 2017-05-19 10:20:45
0
3
644

ここで、ページのヘッダーとフッターをメイン ページに個別に読み込む必要があります。iframe を使用するとパフォーマンスが悪く、純粋な HTML ページを使用して php の include メソッドを使用してページを直接読み込むことはできません。 Reactやangularなどのフレームワークのテンプレートもインポートできます。習ったことがなかったので、よく考えた結果、jqueryのload()でロードするしかありません。問題は、loadメソッドがメインエラーを引き起こすことです。同期スレッドがブロックされると、ページのエクスペリエンスが非常に悪くなります。

リーリー

私の質問は次のとおりです:
1.メインスレッドのブロックを避けるために、Ajax メソッド $.get や $.post のような非同期読み込みにロード メソッドを設定することはできないでしょうか? load() によって引き起こされるメインスレッドのブロック問題を解決するにはどうすればよいですか?
関連情報を読んだところ、h5 Worker を使用するとメイン スレッドのブロックを回避できるようですが、これが解決する唯一の方法ですか? Worker を使用したことがありません。

2. 私のニーズとして、記事で説明した方法に加えて、現在の状況ではどのように解決すればよいでしょうか? ヘッダーとフッターの読み込みを解決するには、企業開発のどの方法が最適ですか?

問題の解決に協力してくれる皆さんを歓迎します、ありがとう!

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全員に返信(3)
滿天的星座

load() はデフォルトで非同期にロードされ、メインスレッドがブロックされることはありません。したがって、警告にある同期ブロックの問題は、ここでの単一のload()によって引き起こされたものではありません。後でサブページを確認したところ、サブページに <script src="*"> があることがわかりました。そこでサブページの外部js紹介を削除し、警告も消えました。したがって、これは、load() およびサブページに外部 js が導入されたことによって引き起こされる同期ブロック警告です。

いいねを押す +0
左手右手慢动作

1. このメソッドの最下層は、$.ajax() メソッドを呼び出して、サーバーに ajax リクエストを送信します。したがって、デフォルトでは非同期でロードされ、メインスレッドがブロックされることはありません。
。ただし、デフォルトは非同期読み込みであるため、ページの主要部分が最初に表示され、その後サーバー側のヘッダーとフッターのデータが返されてページに挿入される可能性があります。ページ、ヘッダー、フッターが同時に表示される場合は点滅します。
2. 私が遭遇した状況は、ページのヘッダーとフッターが比較的固定されているため、ヘッダーとフッターを記述したテンプレートページを作成し、ページのメイン部分に iframe を埋め込むことができます。状況に応じて iframe のアドレスを設定します。

いいねを押す +0
某草草

1もちろんです。

リーリー

2. 通常、base.html を作成するために、head と tail を作成します。PHP を使用すると、base.html を拡張します

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート