ライブラリの呼び出しが完了した後に実行する必要があるJavaScriptコードがあります。ライブラリはメインページにキャンバスを生成します。既に試しましたwindow.onload、defer、async、$(window).bind( "load"、function)しかし、何も動作していないようです。前述のライブラリは、JS内で一連のJS関数呼び出しを行います。ページがロードされた後でコードを実行できる限り、プラグインを使用することはできます。完全なページがロードされた後に厳密にjavascriptコードを実行するにはどうすればよいですか?
答えて
"任意のスクリプトが何をしていても何かをやったときに"一般的にフックする方法はありません。
最後に機能を呼び出すようにスクリプトを変更する必要があります。
スクリプトがその機能をグローバルとして公開している場合は、は動的に書き換えることができます。
var original_make_canvas();
make_canvas = function make_canvas() {
original_make_canvas();
do_something_else();
}
...しかし、それには多くのifとbutsがあり、上記の例では非常に単純なケースが必要です。
どういうわけか、このコードが動作している理由を教えてください。 window.onload = setTimeout(foo、0); @Quentin – iroh
いいえ、あなたはすべての行動を理解するのに十分なコードを提供していません。 'onload'の使用はまったく無意味ですが、関数に代入できるのは' setTimeout'の戻り値です。 – Quentin
私がwindow.onload = setTimeout(foo、0)を使うと、 window.onload = fooが動作しない場合、fooはすべてのブラウザでページを読み込んだ後に実行され、pageloadの前にfooを実行します。 – iroh
これは私がそれを解決した方法です。 ページ上の特定の要素の読み込み後に実行する必要がある関数fooがあるとします。私はclearintertervalを使用した後、成功するまで関数を100msごとに呼び出すためにsetintervalを使用しました。何かのようなStop setInterval call in JavaScript。
自己回答は問題ありませんが、いくつかの要件があります。あなたがそれを受け入れるより少しの微妙な調整をして、質問に答えるためにそれを使ったことを示す* UPDATE *注記を質問の投稿に追加すれば、役に立つ回答にクレジットを与えることができます。あなたの回答が他の投稿とあまりにも異なる場合は、48時間待ってから作成し、それほど印を付けてください。どちらの場合も、他の回答(その時)がどのように充分でなかったかを明確に述べなければなりません。 http://stackoverflow.com/help/how-to-ask、http://stackoverflow.com/help/someone-answers、http://stackoverflow.com/help/self-answer –
- 1. ページが完全にAngularJSでロードされた後に関数を実行する
- 2. ページが完全にレンダリングされた後にjavascriptを実行する
- 3. Mathjaxが完全にロードされた後にアクションを実行する方法は?
- 4. 注入されたJavaScriptファイルの参照コードがWebページで実行されないようにするにはどうすればよいですか?
- 5. ページが完全にレンダリングされたときにJavascript関数をどのように実行しますか?
- 6. Javascriptを厳密に実行させる
- 7. セグが完了した後、コードを実行するにはどうすればよいですか?
- 8. Window.onloadと、ページが完全にこのJavaScriptコードがロードされた後、私はインラインフレームを開くx秒後に
- 9. ページがロードされた後でJavascriptを実行する
- 10. WebViewが完全にロードされた後にタスクを実行します
- 11. 厳密に型指定された言語によるドメイン駆動型設計でHTTP PATCHを実行するにはどうすればよいですか?
- 12. アンドロイド:UIが完全にロードされた後のアクションを実行する方法
- 13. jQuery ajaxリクエストを起動した後にページが完全にロードされない
- 14. CountDownTimerが実行されて完了するようにするにはどうすればよいですか?
- 15. このコードをワンクリックで完全に実行するにはどうすればいいですか?
- 16. HTML検索コードは、デバッグ時に実行されますが、完全に実行されていないときは完全に実行されません。
- 17. 制限された関数アクセスでjavascriptコードを実行するにはどうすればよいですか?
- 18. システムに完全なルビープロジェクトがありますが、どのように実行すればいいですか?
- 19. 完全に完全なHTMLが生成されたページをJavaでロードする方法はありますか?
- 20. C#を使用して実行時に厳密に型指定されたデータセットを作成するにはどうすればよいですか?
- 21. eval()はメソッドで厳密なモードで実行されますか?
- 22. Android - プロセスをロードした後*コードを実行するにはどうすればいいですか?
- 23. ホームページにJavaScriptコードがロードされていると思って、ウェブサイトにJavaScriptコードをロードするにはどうすればよいですか?
- 24. コードを発行してロードされたアセンブリに注入するにはどうすればよいですか?
- 25. javascriptを実行する前にD3で複数のCSVのロードが完了するようにするにはどうすればよいですか?
- 26. カレンダーが完全にロードされた後でイベントをfullcalendarでレンダリングするにはどうすればよいですか?
- 27. gwtでヒストリトークンを起動した後にコードが実行されないようにするにはどうすればいいですか?
- 28. 毎回のページがロードされた後にjavascriptを実行する
- 29. 完全にロードされた後にhtml5ビデオを再生する
- 30. SafariのDOMレンダリング中にページが完全にロードされない
あなたはどちらのライブラリを使用していますか?それは、あなたが使用しなければならない独自のイベントを定義している可能性があります。 –
私はbpmn.io [bpmn io](https://github.com/bpmn-io)を使用しています。 – iroh