v1.6.0 Hashクラス

前回最後にHashクラスに言及したので見てみます。 【抜粋】 function $H(object) { return new Hash(object); }; var Hash = Class.create(Enumerable, (function() { if (function() { var i = 0, Test = function(value) { this.key = value }; Test.proto…

v1.6.0 Templateクラス

v1.4.0の解読のように逐行解読はしませんです。読んでいて書きたくなったらメモするというスタンスで。 【抜粋】 var Template = Class.create({ initialize: function(template, pattern) { this.template = template.toString(); this.pattern = pattern |…

v1.6.0 Classオブジェクト

【抜粋】 /* Based on Alex Arnell's inheritance implementation. */ var Class = { create: function() { var parent = null, properties = $A(arguments); if (Object.isFunction(properties[0])) parent = properties.shift(); function klass() { this.…

オブジェクト調査用関数

作ったのを忘れないようメモ。たいしたものではありません。。。 2008/01/15 変更 関数そのもののprototype.js依存を解消しました。 既出のオブジェクトは追わないようにしました。 デフォルトで表示する階層を3、各プロパティを20までに制限しました。引数…

ドラッグアンドドロップサンプル(圧縮版)

「ドラッグアンドドロップサンプル - Backstage of theater.js」の圧縮版です。・・・単に書いてみたかっただけです^^; 「こうしたほうがいいよ」的なアドバイスがありましたらコメントくださるとありがたいです。 <html> <head> <script> /** * 要素ドラッガブル化関数 * id</head></html>…

Ajax.Requestもどき隠しフレーム通信

2007/12/19追記。onExceptionオプションを追加しました。例外発生時の処理も変更しています。 2007/12/03追記。Opera9.24に対応しました。以前書いたように、IE7ではローカル環境でAjaxが使えません。今まで使えたのに・・・。拙作theater.jsはprototype.js…

ドラッグアンドドロップサンプル

某所で回答したものを保存します。 ・・・prototype.jsからいろいろ持ってきてますが^^;*1 >>>(圧縮版はこちら。)<<< <html> <head> <script> function getStyle(elem, IEStyleProp, CSSStyleProp){ if(elem.currentStyle){ return elem.currentStyle[IEStyleProp]; }e</head></html>…

最近知ったこと

たぶんほんとに今さらですが。 IE7のXMLHttpRequestでローカルファイルが参照できない。 responseXMLはIE6でもそうだったけど、responseTextまでとは・・・。theater.jsのreadmeがIE7で表示できなかったので、変だなと思ったらそういうことか><;たしかに…

iGoogleガジェットでprototype.jsを使用するには

iGoogleガジェットでprototype.jsをそのまま使用することはできません。障害となるのはdocument.getElementByIdがiGoogleガジェットでは使用できず、代わりにiGoogleガジェットが用意する_gel関数を使用しなければならないこと。逆に言えばこれさえクリアで…

idea:16978が検討中になりました。

って、1000株に達すると検討対象になるんですね・・・。 http://hatena.g.hatena.ne.jp/hatenaidea/20070927 知らなかった。 さっさと買い増せばよかったです。。。。 (発案者なのに10株しか持ってない^^;)

theater.js iGoogleガジェットの作り方

デフォルトサンプル - theater-jsの日記の解説です。 とりあえずブログに載せる方法 以下にアクセスしてください。 http://gmodules.com/ig/creator?synd=open&url=http://susie-t.main.jp/theater/gadgets/200709121532.xml 下のほうにある「コードを取得」…

スーパーpre記法(シンタックス・ハイライト)が変

昨日↑を知って、過去の日記のいくつかに適用したのですが、htmlにするとソース内のコメントアウト()が消えるときがあります・・・。JavaScriptソースまるまる消えて、意味のないコードになったりorz 出たり出なかったりで、その条件もよく分からないのですよ…

スーパーpre記法(シンタックス・ハイライト)

ってできていたんですね、知らなかった・・・。過去の日記見直しがてら適用していこうかな。 ソースコードを色付けして記述する(シンタックス・ハイライト) - はてなダイアリーのヘルプ

v2.0.3公開

theater.jsのページでtheater.js v2.0.3を公開しました。不具合修正がいくつかあります。また、theater.js本体等の文字コードをutf-8に変更しました。グローバル対応ということで。(本音は、iGoogleガジェットに利用するのに都合がいいので^^;)追加機能の…

theater.js実験場開設

サブアカウントid:theater-jsを取得して、theater.js iGoogleガジェット実験用ブログを開設しました。本アカウント(ココ)は、技術的な目的で来られる方が多いので、重たいガジェットは不向きと思われますので。興味があれば覗いてやってください。ご意見・ご…

iGoogleガジェット実験

theater.jsをiGoogleガジェットにしてみました。(2007/09/04 サブアカウントのページに移しました。) http://d.hatena.ne.jp/theater-js/20070903おおお。動きました。すごい。(←自分で言うな)YahooからRSS取得して表示してます。画像は記事ページから無理や…

v2.0.2公開

このまえv2.0.1を公開したばかりですが・・・。readme等をつけただけです。機能的には変更ありません。やっとVectorにソフトウェア更新申請ができました^^;今後は、バグフィックスを除いて正式版のバージョンをしばらく凍結し、機能追加はベータ版として…

v2.0.1公開

先ほど不具合が発見されたため、修正対応版を公開しました。→ダウンロード 事象:playColdメソッドの引数にグローバルエリアに定義されたシナリオ関数配列の変数名を指定するとエラーとなる場合がある。 原因:プログラムミス。evalでシナリオ関数配列変数名…

クロージャとレキシカルスコープ

自分なりのまとめです。 【他、参考となるサイト】 http://d.hatena.ne.jp/keyword/%a5%af%a5%ed%a1%bc%a5%b8%a5%e3 http://www.atmarkit.co.jp/fdotnet/ajaxjs/ajaxjs03/ajaxjs03_03.html http://www.atmarkit.co.jp/fdotnet/ajaxjs/ajaxjs03/ajaxjs03_04.h…

Ajax.Requestでのフォームデータ送信サンプル(postBodyへの設定)

Ajax.Requestでのフォームデータ送信サンプルを載せておきます。ポイントはForm.serializeメソッドです。これがフォーム内容をpostBodyプロパティに適合した文字列に変換してくれます。 [test.htm]UTF-8で記述 <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <script language="javascript" src="./prototype.js" charset="utf-8"></script> <…</meta></head></html>

ローカルファイルを読み書きするサンプル(Scripting.FileSystemObject)

WSH

question:1169003191 で回答したものです。 <html> <head> <title></title> <script> var fso = new ActiveXObject("Scripting.FileSystemObject"); var path = "C:\\text.txt" function readFile(){ if(!fso.FileExists(path)){ alert("ファイルが存在しません"); return false; } var textObj </head></html>…

画像の先読み

実現のためのコードはいたってシンプルです。以下のようにします。 var imgObj = new Image(); imgObj.src = "sample1.jpg"; JavaScriptでImageオブジェクトのsrcプロパティに画像アドレスを設定すると、その時点でブラウザが画像をダウンロードするのを利用…

関数名に「onload」を使うと・・・

常識かもしれないけど、初めて知ったのでメモ。 http://q.hatena.ne.jp/1179461074 で回答した際、グローバル宣言の関数ならwindow["関数名"]でアクセスできることを利用しました。 function test(str){ alert(str); } window["test"]("!!!"); ここで疑問が…

テロップを流すサンプル

question:1178848515の回答の修正です。 <html> <head> <script type="text/javascript"> /** * スタイル値取得関数 * elemID : 対象要素ID * IEStyleProp : IE用CSS属性名(aaaBbb形式) * CSSStyleProp : その他用CSS属性名(aaa-bbb形式) */ function getElementStyle(elemID, IEStyleProp, CSSStylePro</head></html>…

theater.jsのサイト開設

theater.jsのサイトを開設しました。(まだ内容が不十分ですが) http://susie-t.main.jp/ 製作途中の自作ライブラリの解説を、ブログでするのは無理がある気がしたので^^;今後はtheater.jsの解説を、上記サイトで行っていく予定です。

基本メニュー表示と結果取得

アドベンチャーゲームを作るという以上、ユーザに入力を促し、その結果によってシナリオを分岐させる機能は必須です。このとき、モーダル(modal)であること*1がより望ましいです。これを実現するのに最も簡単なのはJavaScriptのconfirm、およびpromptを利用…

ブログでアドベンチャーゲーム試作(ちょっと無理やり)

↑こんなタイトルですが、はてなはスクリプトタグが使えないので、seesaaブログに間借りしました^^; http://susie-t.seesaa.net/category/2731315-1.html こんな感じのブログもアリじゃないかなと思う次第。ただ、やっぱり重いです・・・。それにこのまま…

Positionオブジェクトの枠線幅問題対策

※FirefoxのBODY枠線問題に対応しました。 【関連】 Positionオブジェクト(1) - Backstage of theater.js Positionオブジェクト(3) - Backstage of theater.js offsetTop/offsetLeft/offsetParentの闇 - Backstage of theater.js prototype.jsのPosition.cumu…

使用サンプル

一番簡単な利用方法を説明します。 【ダウンロード】 http://susie-t.main.jp/index.php?%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89 <html> <head> <title>TheaterJS BASIC</title> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> </meta></head></html>

Theaterクラス

以下のサイトにてダウンロードしてください。 http://susie-t.main.jp/index.php?%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89 注意事項 上記サイトからダウンロードして得られるファイルの「staff」フォルダ内の「theaterconstructor.js」を読…