addListener
クリック、キープレスなどのjQueryリスナーを除いて、Googleマップを再現しようとしています.
.event.addListener(map, 'click', function()...
Moogle Maps では、 'click' を 'drag' や 'mouseover' などで記述したり置き換えたりできます。jQuery では、'click' や 'keypress' などと類似していると思います。
トリガーの種類を変数として渡すことができるポイントで立ち往生しています。次のように、個々のラッパー リスナーを宣言するのは簡単でした。
function addClickListener(id, fn) {
$(id).click(function() { fn(event); });
}
// and
function addKeyPressListener(id, fn) {
$(id).keypress(function() { fn(event); });
}
以下に示すように、私が探しているのは壊れています。Google が「クリック」のような文字列を渡して関数を呼び出す方法がわかりません。たぶんeval
?身震い
function addListener(id, type, fn) {
typeFn = $.type;
$(id).typeFn(function() { fn(event); });
}