pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

    <bdo id='2hXWR'></bdo><ul id='2hXWR'></ul>

<legend id='2hXWR'><style id='2hXWR'><dir id='2hXWR'><q id='2hXWR'></q></dir></style></legend>

    <small id='2hXWR'></small><noframes id='2hXWR'>

  1. <i id='2hXWR'><tr id='2hXWR'><dt id='2hXWR'><q id='2hXWR'><span id='2hXWR'><b id='2hXWR'><form id='2hXWR'><ins id='2hXWR'></ins><ul id='2hXWR'></ul><sub id='2hXWR'></sub></form><legend id='2hXWR'></legend><bdo id='2hXWR'><pre id='2hXWR'><center id='2hXWR'></center></pre></bdo></b><th id='2hXWR'></th></span></q></dt></tr></i><div class="r7lnnp7" id='2hXWR'><tfoot id='2hXWR'></tfoot><dl id='2hXWR'><fieldset id='2hXWR'></fieldset></dl></div>
  2. <tfoot id='2hXWR'></tfoot>

    1. Leaflet.contextmenu 回調(diào)

      Leaflet.contextmenu callbacks(Leaflet.contextmenu 回調(diào))

          <tbody id='XqtL6'></tbody>
          1. <tfoot id='XqtL6'></tfoot>
          2. <legend id='XqtL6'><style id='XqtL6'><dir id='XqtL6'><q id='XqtL6'></q></dir></style></legend>
            • <small id='XqtL6'></small><noframes id='XqtL6'>

                <bdo id='XqtL6'></bdo><ul id='XqtL6'></ul>
                <i id='XqtL6'><tr id='XqtL6'><dt id='XqtL6'><q id='XqtL6'><span id='XqtL6'><b id='XqtL6'><form id='XqtL6'><ins id='XqtL6'></ins><ul id='XqtL6'></ul><sub id='XqtL6'></sub></form><legend id='XqtL6'></legend><bdo id='XqtL6'><pre id='XqtL6'><center id='XqtL6'></center></pre></bdo></b><th id='XqtL6'></th></span></q></dt></tr></i><div class="xz7z5dn" id='XqtL6'><tfoot id='XqtL6'></tfoot><dl id='XqtL6'><fieldset id='XqtL6'></fieldset></dl></div>
                本文介紹了Leaflet.contextmenu 回調(diào)的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

                問題描述

                我正在努力解決 Leaflet.contextmenu 庫中的問題.

                I'm struggling with a problem in the Leaflet.contextmenu library.

                我有許多不同的地圖,保存在一個全局?jǐn)?shù)組中.然后我使用 contextmenu 選項在我的地圖中有一個 contextmenu.當(dāng)我想定義我的回調(diào)函數(shù)時,我無法訪問我的 arrMap[id],因為該函數(shù)不知道我正在使用的 id.

                I got a number of different maps, saved in a global Array. Then I'm using the contextmenu options to have a contextmenu in my maps. When I want to define my callback functions, I can't access my arrMap[id], because the function doesn't know the id I'm using.

                我的問題是:如何將對象(例如 id)放入 Leaflet.contextmenu 庫的回調(diào)函數(shù)中?

                My question here is: How can I give an object (the id, for example) into a callback function of the Leaflet.contextmenu library?

                function x(){
                    arrMap[id] = new L.map('map'+id,{
                        contextmenu: true,
                        contextmenuWidth: 140,
                        contextmenuItems: [{
                            text: 'Messung an dieser Position einfügen',
                            callback: newMeasurement
                        }, {
                            text: 'zeige Koordinaten',
                            callback: showCoordinates
                        }, {
                            text: 'Karte hier zentrieren',
                            callback: centerMap
                        }]
                    });
                }
                
                function newMeasurement(e){
                //do something with e AND ID
                }
                

                我想過這樣的事情:

                //function x(){...
                callback: newMeasurement(e,id)
                //...}
                
                function newMeasurement(e,id){
                  console.log(id);
                }
                

                ...但這不起作用:(

                ...but that's not working :(

                感謝大家的幫助!

                推薦答案

                你需要為你想要的值創(chuàng)建一個閉包.

                You need to create a closure over the value you want.

                首先,閱讀 ?JS 閉包如何工作?? 問題.

                然后,閱讀 MDN 閉包參考.然后,this question about how to create different Leaflet event handlers pass每個處理函數(shù)的值不同

                首先閱讀這些內(nèi)容.嘗試?yán)斫膺@個概念.我是認(rèn)真的.如果你一味地復(fù)制粘貼代碼,那么stackoverflow的神會殺了一只小貓.

                Read those first. Try to understand the concept. I mean it. If you blindly copy-paste code, then the gods of stackoverflow will kill a kitten.

                現(xiàn)在,你想要一個事件處理函數(shù),它只接收一個參數(shù),比如

                Now, you want to have an event handler function, which will receive just one parameter, like

                function newMeasurement(ev){
                    // do something with 'ev' AND 'id'
                }
                

                那個函數(shù)需要接收一個參數(shù),并且需要在某處有一個id變量.好的,那么,讓我們創(chuàng)建一個返回函數(shù)的函數(shù):

                That function needs to receive one parameter, and needs to have an id variable somewhere. OK then, let's create a function that returns a function:

                function getMeasurementHandler(id) {
                    return function(ev) {
                        doSomething(ev, id);
                    }
                }
                

                這樣,如果你運行例如:

                That way, if you run e.g.:

                var handlerForId1234 = getMeasurementHandler(1234);
                

                這或多或少等同于

                var handlerForId1234 = function(ev) { doSomething(ev, 1234); }
                

                讓我們把它們放在一起:

                Let's put it all together:

                for (var id=0; id<4; id++) {
                    arrMap[id] = new L.map('map'+id, {
                        contextmenuItems: [{
                            text: 'Somethingsomething',
                            callback: getEventHandlerForId(id)
                        }]
                    });
                }
                
                getCallbackFuncForId(id) {
                    return function(ev) {
                        console.log('Event ', ev, ' in ID ', id);
                    }
                }
                

                這篇關(guān)于Leaflet.contextmenu 回調(diào)的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

                【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(lián)系我們刪除處理,感謝您的支持!

                相關(guān)文檔推薦

                Check if a polygon point is inside another in leaflet(檢查一個多邊形點是否在傳單中的另一個內(nèi)部)
                Changing leaflet markercluster icon color, inheriting the rest of the default CSS properties(更改傳單標(biāo)記群集圖標(biāo)顏色,繼承其余默認(rèn) CSS 屬性)
                Trigger click on leaflet marker(觸發(fā)點擊傳單標(biāo)記)
                How can I change the default loading tile color in LeafletJS?(如何更改 LeafletJS 中的默認(rèn)加載磁貼顏色?)
                Add external geojson to leaflet layer(將外部geojson添加到傳單層)
                Adding Leaflet layer control to sidebar(將 Leaflet 圖層控件添加到側(cè)邊欄)
              • <small id='6oTcU'></small><noframes id='6oTcU'>

                  <i id='6oTcU'><tr id='6oTcU'><dt id='6oTcU'><q id='6oTcU'><span id='6oTcU'><b id='6oTcU'><form id='6oTcU'><ins id='6oTcU'></ins><ul id='6oTcU'></ul><sub id='6oTcU'></sub></form><legend id='6oTcU'></legend><bdo id='6oTcU'><pre id='6oTcU'><center id='6oTcU'></center></pre></bdo></b><th id='6oTcU'></th></span></q></dt></tr></i><div class="jrv7nxz" id='6oTcU'><tfoot id='6oTcU'></tfoot><dl id='6oTcU'><fieldset id='6oTcU'></fieldset></dl></div>

                    <tbody id='6oTcU'></tbody>
                      • <legend id='6oTcU'><style id='6oTcU'><dir id='6oTcU'><q id='6oTcU'></q></dir></style></legend>

                          <bdo id='6oTcU'></bdo><ul id='6oTcU'></ul>
                        • <tfoot id='6oTcU'></tfoot>
                          主站蜘蛛池模板: 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 高铝砖-高铝耐火球-高铝耐火砖生产厂家-价格【荣盛耐材】 | 塑料熔指仪-塑料熔融指数仪-熔体流动速率试验机-广东宏拓仪器科技有限公司 | 地源热泵一体机,地源热泵厂家-淄博汇能环保设备有限公司 | 东莞螺杆空压机_永磁变频空压机_节能空压机_空压机工厂批发_深圳螺杆空压机_广州螺杆空压机_东莞空压机_空压机批发_东莞空压机工厂批发_东莞市文颖设备科技有限公司 | 精密模具制造,注塑加工,吹塑和吹瓶加工,EPS泡沫包装生产 - 济南兴田塑胶有限公司 | 立刷【微电签pos机】-嘉联支付立刷运营中心 | 流量检测仪-气密性检测装置-密封性试验仪-东莞市奥图自动化科技有限公司 | 杭州公司变更法人-代理记账收费价格-公司注销代办_杭州福道财务管理咨询有限公司 | 贵州成人高考网_贵州成考网 | 北京律师事务所_房屋拆迁律师_24小时免费法律咨询_云合专业律师网 | 高精度-恒温冷水机-螺杆式冰水机-蒸发冷冷水机-北京蓝海神骏科技有限公司 | 磁力反应釜,高压釜,实验室反应釜,高温高压反应釜-威海自控反应釜有限公司 | Win10系统下载_32位/64位系统/专业版/纯净版下载 | 酒吧霸屏软件_酒吧霸屏系统,酒吧微上墙,夜场霸屏软件,酒吧点歌软件,酒吧互动游戏,酒吧大屏幕软件系统下载 | 洁净化验室净化工程_成都实验室装修设计施工_四川华锐净化公司 | 蒸汽吸附分析仪-进口水分活度仪|康宝百科 | 在线钠离子分析仪-硅酸根离子浓度测定仪-油液水分测定仪价格-北京时代新维测控设备有限公司 | 上海公司注册-代理记账-招投标审计-上海昆仑扇财税咨询有限公司 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 山东限矩型液力偶合器_液力耦合器易熔塞厂家-淄博市汇川源机械厂 | 北京易通慧公司从事北京网站优化,北京网络推广、网站建设一站式服务商-北京网站优化公司 | 智慧水务|智慧供排水利信息化|水厂软硬件系统-上海敢创 | 一点车讯-汽车网站,每天一点最新车讯! | 超高频感应加热设备_高频感应电源厂家_CCD视觉检测设备_振动盘视觉检测设备_深圳雨滴科技-深圳市雨滴科技有限公司 | 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 新型锤式破碎机_新型圆锥式_新型颚式破碎机_反击式打沙机_锤式制砂机_青州建源机械 | 骨灰存放架|骨灰盒寄存架|骨灰架厂家|智慧殡葬|公墓陵园管理系统|网上祭奠|告别厅智能化-厦门慈愿科技 | 沈阳庭院景观设计_私家花园_别墅庭院设计_阳台楼顶花园设计施工公司-【沈阳现代时园艺景观工程有限公司】 | 智能垃圾箱|垃圾房|垃圾分类亭|垃圾分类箱专业生产厂家定做-宿迁市传宇环保设备有限公司 | 科昊仪器超纯水机系统-可成气相液氮罐-美菱超低温冰箱-西安昊兴生物科技有限公司 | 电液推杆生产厂家|电动推杆|液压推杆-扬州唯升机械有限公司 | 球磨机 选矿球磨机 棒磨机 浮选机 分级机 选矿设备厂家 | 农产品溯源系统_农产品质量安全追溯系统_溯源系统 | PTFE接头|聚四氟乙烯螺丝|阀门|薄膜|消解罐|聚四氟乙烯球-嘉兴市方圆氟塑制品有限公司 | 番茄畅听邀请码怎么输入 - Dianw8.com | 苏州防水公司_厂房屋面外墙防水_地下室卫生间防水堵漏-苏州伊诺尔防水工程有限公司 | 便民信息网_家电维修,家电清洗,开锁换锁,本地家政公司 | 建筑资质代办_工程施工资质办理_资质代办公司_北京众聚企服 | 气力输送_输送机械_自动化配料系统_负压吸送_制造主力军江苏高达智能装备有限公司! | 河南中整光饰机械有限公司-抛光机,去毛刺抛光机,精密镜面抛光机,全自动抛光机械设备 | 3D全息投影_地面互动投影_360度立体投影_水幕灯光秀 | 广东银虎 蜂窝块状沸石分子筛-吸附脱硫分子筛-萍乡市捷龙环保科技有限公司 |