我在下面显示了framePopup:
var framed = new OpenLayers.Popup.FramedCloud(null,new OpenLayers.LonLat(geometry.x,geometry.y),null, content ,null,true,function(evt1){this .hide();}); framed.autoSize = true; map.addPopup(framed,true);
2'内容'是我用纯代码(如
)放置按钮的部分<input type='button' id='showNaviDiv'/>
然后,我听这个按钮如下
on(dom.byId(&#34; rcp1_map&#34;),on.selector(&#34;#showNaviDiv&#34;,&#34; click&#34;),function(evt){alert( ); console.debug(EVT);});
&#34; rcp1_map&#34;是地图的身份。
但是听众不会对弹出窗口的div进行操作。
任何建议都会很感激。
答案 0 :(得分:0)
假设您的framePop弹出窗口在初始化时在页面上添加了DOM,您可以尝试按ID获取按钮,并在呈现其DOM后添加事件监听器。
require(['dojo/on','dojo/dom'], function(on, dom){
//... when the framePop DOM is rendered
on(dom.byId('showNaviDiv), 'click', function(e){
// handle the event
});
});