これは特に風変わりだとは思いませんが、JavaScript コードを制御しようとして (JavaScript を実際に制御できる場合;-) )、クライアント側のすべての JavaScript を素敵なオブジェクトでラップしてきました。または、とにかくそれらを作ることができるのと同じくらい素敵です。
私が最初に遭遇した問題の 1 つは、これらのオブジェクト内の何かにイベントを関連付けることでした。これが常にあなたが思っていることを意味するとは限らないことがすぐに明らかになりました。その結果、私のコードは次のようになります。
var obj = this;
_map.AttachEvent("onclick", function(event){ obj.onClickMap(event); });
そうすれば、すべてのイベントが現在のオブジェクトを呼び出します。仕事はいいですね。
ただし、Virtual Earth マップ オブジェクトからイベントを切り離す場合は、最初に割り当てた関数を渡して、その関数のみを割り当て解除する必要があります。これは動作しません:
_map.DetachEvent("onclick", function(event){ obj.onClickMap(event); });
...私が本当に期待していたわけではありません。しかし、そのイベントを切り離す方法だけでは解決できません!