問題タブ [domcontentloaded]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2073 参照

javascript - 「ドキュメント対応」はIEでこのように機能するはずですか?

学習を含むさまざまな理由で、小さなjavascriptフレームワークを作成しています。

したがって、「ドキュメント対応」機能を実装したかったのでDOMContentLoaded、IE<9でjQueryがどのように偽造されるかを確認しました。

問題は、正常に機能していないように見えることです。IE8と優れたブラウザでこのフィドルを確認してください。

ロジックは次のとおりです。cssを適用してdivを赤で開始し、「準備完了」で青に、ロード時に緑にします。さらに、偽のURLを含む3つのimgタグがあるため、準備完了と読み込みの間に総合的な遅れが生じます。

何が起こるべきか:
もしあったとしても、divは一瞬以上赤く表示されるべきではありません。理想的には、最初に表示されるのは青色である必要があります。次に、ブラウザが無効な画像でタイムアウトすると、緑色になります。

IE8で何が起こるか:
すべての画像が「ロード」されるまで(この合成例ではタイムアウト)、divは赤のままで、その後緑になります。

繰り返しになりますが、私は正確に修正を求めているわけではありません。フレームワークがIE8でこのように動作するのが正しいかどうか(IE 6-7はもう気にしません)、またはこれが起こっているかどうかを尋ねています。なんらかの方法でjQueryを誤用したためです。

PS:私はイベントを手動でバインドする方法を知っています、これが予想される/許容できる/バグ/私の間違いであるかどうかについてもっと尋ねています。

0 投票する
1 に答える
691 参照

firefox - 「chrome-document-global-created」後にdomにアクセス

Mozilla オブザーバー イベントが発生したときに DOM を取得する必要があります"chrome-document-global-created"。したがって、次のコードがあります。しかし、そこからDOMを取得するにはどうすればよいですか? データはnull(ドキュメントによると)、どのオブジェクトを使用する必要があるか教えてもらえますか?

どうもありがとう!

0 投票する
1 に答える
125 参照

javascript - いくつかのDOMContentLoadedイベント編成を備えた目立たないプレーンJavascript

ばかげた質問かもしれませんが、私はJavaScriptと非常に混同しています。私は、可能な限り控えめなJavaScriptを使用して、このコード編成に従います。私はGoogleマップを使用するRubyonRailsでWebサイトを構築しています。

私のシナリオ:非常に巨大なWebサイトがあり、さまざまなページで、いくつかのアクションを実行するJavaScriptスクリプトを開始する必要があるとします。

問題は、ユーザーがどのページにアクセスしたかに関係なく、自分のWebサイトのすべてのJavaScriptコードをユーザーのブラウザーに追加する必要があることです。たとえば、巨大なJavaScriptコードを使用するページAと、いくつかの小さなJavaScriptコードを使用するページBがあるとします。私が理解している限り、ページBでは、ユーザーはすべてのJavaScriptコードを取得する必要があります(つまり、ページAとBの両方)。それは少し非現実的ではありませんか?

さらに、両方のページで、JavaScriptはdocument.addEventListener("DOMContentLoaded", function, false);関数によって開始されます。ただし、ページAの関数は、「pageA」という名前のdivがあると想定しています(これは、jsスクリプトを介して変更または要素を追加するための参照として使用されます)。同様に、ページBの関数は、「pageA」という名前のdivがあると想定しています。 pageB」。したがって、私がページBIにいるとき、「pageA」の要素がないというjsエラーを受け取ります。どうすればそれを回避できますか?

すべてのページについて、JavaScriptコード全体(つまりすべてのページ)をユーザーにロードする必要があるという事実を考えると、どのように開始できますか(つまり、ユーザーイベントが発生した後ではなく、ページがロードされたときにすぐに開始します)そのようなエラーのない特定のJavaScriptコード?私は本当に混乱しています!

Wooho非常に速い応答はみんなに感謝します!しかし、私はjsコード全体を1つのファイルに書くとは決して言いませんでした。代わりに、RoRの組織を使用します。(ところで、すべてのファイルを1つのファイルに結合します)。問題を明確にするために、さまざまなファイルで、ページAのイベントとページB(またはCなど)のイベントを開始します。コードは、DOMContentLoadedイベントが発生するとすぐに起動します。ただし、ユーザーがページBにいるときは、ページAのイベントを発生させたくありません。または同様に、ページBのjsのみをロードしたい(ページAのイベントが発生しないようにするため)。どうやってやるの?

PS:あなたがより良いタイトルを考えたら、それを提案してください!

0 投票する
0 に答える
408 参照

cordova - DOMContentLoadedイベントがトリガーされる前に、phonegap javascriptをDOMに追加する必要がありますか?

Cordova-2.2.0.jsは、アプリが起動時にロードする最初のhtmlページに含まれています。devicereadyイベントがトリガーされた後、「window.location.href = "http://myurl.aspx";」を使用して外部の.aspxページが読み込まれます。

ロードされたページにcordova.jsのスクリプトタグが含まれている場合、devicereadyが起動し、すべてが正常に機能します。ただし、ユーザーはiOSデバイスまたはAndroidデバイスを使用している可能性があります。したがって、cordova.jsを動的にページに追加する必要があります。Cordova.jsは常にデバイスにダウンロードされますが、外部URLがデバイス上のcordovaのAPIに接続できない場合があります。私はiPadでこの問題を経験しました。

アプリが正常に動作している場合、cordova.jsがDOMContentLoadedイベントを処理していることに気付きますが、動作していない場合、cordova.jsはイベントをキャッチしていません。

ありがとう、

0 投票する
3 に答える
1504 参照

javascript - Javascript DOMContentLoadedには不思議な5〜10秒の遅延があります

私はこれについて本当に混乱しています。Bootstrapのカルーセルを使用するテストサイトに適度に動的なページがあります(ただし、それが私のコードであり、彼らのコードではないことを望んでいます。それは間違っています)。

テストページはここにあります:http://bit.ly/ZjLl19

お気づきのことは次のとおりです...

  • ページの読み込みが開始されます
  • スタッフのポートレートが表示され始めます
  • その後...約5〜10秒間何も起こりません
  • 5〜10秒後、カルーセルがスタッフの経歴と大きな肖像画とともに表示されます

なぜこの遅延があるのですか?Webkitデバッガーを調べたところ、DOMContentLoaded実行中、他の何かが発生する前に、タイムラインにアイドル時間が表示されています。何か案は?

ありがとう!

0 投票する
3 に答える
1668 参照

javascript - $ は DOMContentLoaded の前に定義されていません - JQuery

私が持っているjsファイルの最初のステートメントは

しかし、firebug を使用すると、「$ が定義されていません」と表示されます。ファイルの他の場所では、すべてが期待どおりに機能します。実際、最初の行を次のように変更すると

すべてが正常に動作します。ブラウザー間の互換性を確保したいので、これはしたくありません。

0 投票する
1 に答える
165 参照

php - SQL を使用せずにユーザーがスクロールすると、より多くのコンテンツが生成されます

私の目標は、ユーザーが下にスクロールしたときに次のコードを生成することです。

このコードはブロック内にあります。ランダムな画像を生成し、適切にフォーマットされた領域に表示したいと考えています。現在、このコードを自動的に生成する必要があることを除いて、すべてが機能しているため、ユーザーがスクロールするとより多くの投稿が表示されます...下にスクロールするとFacebookが壁に多くの投稿をロードするように. 多くのスクリプトを試しましたが、どれもうまくいきませんでした。

0 投票する
3 に答える
1905 参照

javascript - DOMContentLoaded イベントの機能検出サポート

DOMContentLoadedイベントのサポートを検出することは可能ですか?

ここでの Kangax のソリューションのようなメソッドDOMContentLoadedは、要素のプロパティとして公開されていないため機能しません: Detecting event support without browser sniffing

0 投票する
2 に答える
4305 参照

jquery - 画像の読み込み後にページ全体の画像を表示する

画像がロードされた後にのみ表示され、ページの残りの部分は正常に表示されるようにするにはどうすればよいですか? 各ページにはこのようなものが<html class"page-name">あり、cssは次のとおりですhtml.page-name { background: url(images/page-name.jpg) no-repeat center center fixed; background-size: cover; }

JavaScriptを次のように実行しようとしました$(window).load(function(){ $('html').fadeIn(1500); });

しかし、画像が読み込まれるまで穴のページが空白であるため、これは明らかに機能しません。画像が読み込まれるまで背景を黒くしてから、黒の背景に置き換えます。$(window).load(function(){ $('html').addClass('page-title'); }); クラスにトランジション効果がある場所も試しましpage-titleたが、機能しません。

背景を黒にして、完全にロードした後に画像に置き換えるにはどうすればよいですか?

ありがとうございました。