ユーザーが有効にした場合にのみ OpenLayers の機能を動作させようとしています。clickSearch
ブール変数を true または false に変える関数を呼び出す html ボタンを作成しました。関数を でのみ動作させるにはどうすればよいclicksearch = true
ですか? それはある種のif文ですか?
これは、オンとオフを切り替えたい機能を実行するコードです。
OpenLayers.Control.Click = OpenLayers.Class(OpenLayers.Control, {
defaultHandlerOptions: {
'single': true,
'double': false,
'pixelTolerance': 0,
'stopSingle': false,
'stopDouble': false
},
initialize: function(options) {
this.handlerOptions = OpenLayers.Util.extend(
{}, this.defaultHandlerOptions
);
OpenLayers.Control.prototype.initialize.apply(
this, arguments
);
this.handler = new OpenLayers.Handler.Click(
this, {
'click': this.trigger
}, this.handlerOptions
);
},
trigger: function(e) {
var lonlat = map.getLonLatFromPixel(e.xy);
alert("You clicked near " + lonlat.lat + " N, " +
+ lonlat.lon + " E");
}
});
これらの関数は、ブール値のclickSearch
オンとオフを切り替えます
var clickSearch= false;
function turnOn(){ clickSearch=true};
function turnOff(){ clickSearch=false};
これらのボタンは、関数を呼び出してclickSearch
オン/オフを切り替えます。
<button onclick="turnOn()">Turn on click-to-search</button>
<button onclick="turnOff()">Turn off click-to-search</button>