• : Function split() is deprecated in /var/www/drupal-5.23/modules/filter/filter.module on line 1206.
  • : Function split() is deprecated in /var/www/drupal-5.23/modules/filter/filter.module on line 1206.
  • : Function split() is deprecated in /var/www/drupal-5.23/modules/filter/filter.module on line 1206.
  • : Function split() is deprecated in /var/www/drupal-5.23/modules/filter/filter.module on line 1206.
  • : Function split() is deprecated in /var/www/drupal-5.23/modules/filter/filter.module on line 1206.
  • : Function split() is deprecated in /var/www/drupal-5.23/modules/filter/filter.module on line 1206.
  • : Function split() is deprecated in /var/www/drupal-5.23/modules/filter/filter.module on line 1206.
  • : Function split() is deprecated in /var/www/drupal-5.23/modules/filter/filter.module on line 1206.

JavaScript で、JavaScript からJavaScript を呼び出す方法

JavaScript から直接 ~タグを書いてしまう。 document.write( ' yourscript.js">' ); スクリプト間でまたがる変数や関数を使いたい場合は、以下のようにする。 // yourscript_1.js var example = 'passed: yourscript_1.js'; // yourscript_2.js alert(example); // yourscript_3.js document.write(" yourscript_1.js'>"); document.write(" yourscript_2.js'>");
JavaScript から直接 ~タグを書いてしまう。 document.write( ' yourscript.js">' ); スクリプト間でまたがる変数や関数を使いたい場合は、以下のようにする。 // yourscript_1.js var example = 'passed: yourscript_1.js'; // yourscript_2.js alert(example); // yourscript_3.js document.write(" yourscript_1.js'>"); document.write(" yourscript_2.js'>");

AJAX プログラミングの注意点

筆者が AJAX に触れたのはもう1年くらい前であって、そのあとはしばし AJAX から離れていた。それから最近また AJAX する機会があって、この PerlTips を見ながらコードを書いているが、苦労した点というのは1年も経つとやはり忘れてしまうらしい。それでもこの PerlTips を眺めていたら解決できたこともあったのでそれを注意点としてまとめてみた。おそらく誰もが陥りやすいワナだろう。
筆者が AJAX に触れたのはもう1年くらい前であって、そのあとはしばし AJAX から離れていた。それから最近また AJAX する機会があって、この PerlTips を見ながらコードを書いているが、苦労した点というのは1年も経つとやはり忘れてしまうらしい。それでもこの PerlTips を眺めていたら解決できたこともあったのでそれを注意点としてまとめてみた。おそらく誰もが陥りやすいワナだろう。

AJAX/JavaScript で、画像(image)を重ねる方法

AJAX で画面をライブアップデートして、地図の上の画像の位置が逐次変化するようなユースケースを考える。画像(image)を動的に生成して処理するには、
var icon = document.createElement('img');
として、
var icons = document.createElement('div');
の icons コレクションの中に追加すればよい。そして icons オブジェクトは HTML 中に宣言してある
に追加する。 しかしこれをずっと繰り返すと古い画像が地図の上に残ったままになる。そこで update メソッドの最初の方で
for(i = 0; i < icons.childNodes.length; i++) {
    try {
        icons.removeChild(icons.childNodes[i]);
    } catch(e) {
    }
}
という処理を入れて、icons ノードに含まれる個々の icon オブジェクト(image オブジェクト)を削除してあげればよい。
AJAX で画面をライブアップデートして、地図の上の画像の位置が逐次変化するようなユースケースを考える。画像(image)を動的に生成して処理するには、
var icon = document.createElement('img');
として、
var icons = document.createElement('div');
の icons コレクションの中に追加すればよい。そして icons オブジェクトは HTML 中に宣言してある
に追加する。 しかしこれをずっと繰り返すと古い画像が地図の上に残ったままになる。そこで update メソッドの最初の方で
for(i = 0; i < icons.childNodes.length; i++) {
    try {
        icons.removeChild(icons.childNodes[i]);
    } catch(e) {
    }
}
という処理を入れて、icons ノードに含まれる個々の icon オブジェクト(image オブジェクト)を削除してあげればよい。

AJAX で、動的にテーブルを作る方法(中・上級)

先のエントリーAJAX で、動的にテーブルを作る方法(初級)では、感じをつかむために、ベタにテーブルを作成していたため、重複するロジック/コードが多かった。ここではそれをフレームワークっぽくした。こういう軽量なコードを理解した上で、ひな型として自分で持っておくと見通しがよくてよいと思う。 この JavaScript ではできるだけ Java のアプレットにならった構造やメソッド名に近づけた。つまり、
先のエントリーAJAX で、動的にテーブルを作る方法(初級)では、感じをつかむために、ベタにテーブルを作成していたため、重複するロジック/コードが多かった。ここではそれをフレームワークっぽくした。こういう軽量なコードを理解した上で、ひな型として自分で持っておくと見通しがよくてよいと思う。 この JavaScript ではできるだけ Java のアプレットにならった構造やメソッド名に近づけた。つまり、

AJAX で、動的にテーブルを作る方法(初級)

AJAX でサーバから XML データを読み込んでそこからテーブルを作る。今回は列(カラム)の個数とその名前は決め打ちとする。まずは HTML を次のようにしておいて、 2007/01/10 追記: IE では、DIVタグに付けた ID を JavaScript から利用する場合は、JavaScript の前に DIV を宣言しなければならないらしい。document.getElementByID(...) is null or not an object というエラーが出る。Firefox だとその順番は関係がない。 また、document.getElementByID(DIV_DATA).insertBefore(table, null); は、IE だと table オブジェクトに tbody オブジェクトを追加してからでないとダメらしい。
<div id="data"></div>
<script src="http://<font color="red"><strong>your</strong></font>domain.com/your_javascript.js" type="text/javascript">
</script>
AJAX でサーバから XML データを読み込んでそこからテーブルを作る。今回は列(カラム)の個数とその名前は決め打ちとする。まずは HTML を次のようにしておいて、 2007/01/10 追記: IE では、DIVタグに付けた ID を JavaScript から利用する場合は、JavaScript の前に DIV を宣言しなければならないらしい。document.getElementByID(...) is null or not an object というエラーが出る。Firefox だとその順番は関係がない。 また、document.getElementByID(DIV_DATA).insertBefore(table, null); は、IE だと table オブジェクトに tbody オブジェクトを追加してからでないとダメらしい。
<div id="data"></div>
<script src="http://<font color="red"><strong>your</strong></font>domain.com/your_javascript.js" type="text/javascript">
</script>