タグ

2007年7月18日のブックマーク (3件)

  • 関数を非同期化して汎用性を高める - IT戦記

    関数を非同期化する関数を作ってみた。 Function.prototype.asynchronize = function() { var f = this; return function() { var resultcb = function() {}; var failcb = function(e) { throw e }; if (typeof arguments[arguments.length - 1] == 'function') { resultcb = Array.prototype.pop.apply(arguments); if (typeof arguments[arguments.length - 1] == 'function') { failcb = Array.prototype.pop.apply(arguments); } } try { var re

    関数を非同期化して汎用性を高める - IT戦記
    toton
    toton 2007/07/18
    Function.prototype.asynchronize
  • ajax(xmlhttprequest)で非同期取得したHTMLを、元のHTMLにinnerHTMLで流し込んでいます。…

    ajax(xmlhttprequest)で非同期取得したHTMLを、元のHTMLにinnerHTMLで流し込んでいます。 この取得したHTMLの中にJavaScriptがあるのですが、このJavaScriptが動いてくれません。このJavaScriptは外部ファイルに記述されています。 非同期ではなく通常のページに埋め込んで実行(サーバにアップして普通に取得するしてブラウザで表示)した場合は正しく動作しますのでスクリプト自体は問題ないと思われます。 この外部ファイルのJavaScriptを含むHTMLを非同期取得して尚且つスクリプトを走らせる方法はないでしょうか? なお、該当の外部スクリプトを修正することは出来ません。 このままでは無理な場合は、なにか代案がありましたらお願いします。 (うっすらと思ってるのは、サーバでスクリプトを実行させて結果に置き換えてからHTMLを返すってことかな、と

    toton
    toton 2007/07/18
    動的ajavascriptロードの話題。iframeを使った解など。
  • Collection & Copy - ドキュメントのロード完了に合わせて関数を実行する

    JavaScriptページロード時にプログラムを実行するためにwindow.onloadやbody.onloadがしばしば使われる。しかし、ページ内に大きな画像が存在する場合などは、画像のロードを待つため、実行が遅れてしまう。「ドキュメントのロードが終わっていて、かつ、イメージのロードが完了する前」に関数を実行する方法のリンク2つの要点をコピー。 script要素defer、DOMContentLoadedイベントを利用する方法The window.onload Problem - Solved! Firefoxの場合非公式のイベントハンドラ、DOMContentLoadedを利用する。 // for Mozilla browsersif (document.addEventListener) { document.addEventListener("DOMContentLoaded",

    toton
    toton 2007/07/18
    「ドキュメントのロードが終わっていて、かつ、イメージのロードが完了する前」に関数を実行する方法