gpt4 book ai didi

jquery - 使用自己的按钮单击传单来打开/关闭 WMS 图层

转载 作者:行者123 更新时间:2023-12-01 00:26:44 24 4
gpt4 key购买 nike

我已经创建了一些 map ,现在我想使用传单和地理服务器发布它们。一切工作正常,我可以使用图层控制更改图层,但我想使用自己的按钮来做到这一点。问题是我不知道如何做。我已经创建了所有按钮,我只想创建一个在单击时将 wms 图 block 图层添加到 map 的函数

任何帮助将不胜感激。这是我到目前为止尝试过的方法,但不起作用:

function appear(){
var floodToday = L.tileLayer.wms("http://localhost:8080/geoserver/wms", {
layers: 'FloodlayerWMS',
format:'image/png',
version: '1.1.1',
transparent: true
})
map.addLayer(floodToday);
}
$(".WToday").on("click",appear);

我已经找到了这个答案:Hide/Show layerGroups in Leaflet with own Buttons但它并没有被证明是有用的。我猜我的问题与使用 wms 平铺层有关,但我不知道如何解决它。

更新

@HudsonPH 的答案对我来说有点复杂,因为我对 Javascript 和 JQuery 几乎一无所知,但在稍微摆弄代码并尝试不同的选项之后,这对我来说是有效的:

$("#WToday").click(function(event) {
var floodToday = L.tileLayer.wms("http://localhost:8080/geoserver/wms", {
layers: 'FloodlayerWMS',
format:'image/png',
version: '1.1.1',
transparent: true
})
map.addLayer(floodToday);
});

感谢大家对我的帮助。

最佳答案

您可以使用trim来比较名称并触发事件。Obs:我使用数据属性来获取值

 $("[name='leaflet-base-layers']").parent().each(function (index) {
$layerControl = $(this);
if ($that.attr("Your-Date-Attribute").trim() == $layerControl.find("span").text().trim()) {
$(this).find("input").trigger("click");
}
});

关于jquery - 使用自己的按钮单击传单来打开/关闭 WMS 图层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37431242/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com