gpt4 book ai didi

javascript - Gmaps4Rails - 自定义信息窗口不工作

转载 作者:行者123 更新时间:2023-11-30 12:36:42 25 4
gpt4 key购买 nike

我在使用 Google Maps 4 Rails gem 实现自定义信息框时遇到问题。我已将信息框插件添加到页面顶部并尝试了文档中的代码片段,但仍然没有自定义信息框或信息框窗口上的“黄色”类。

如何将自定义信息框的选项传递给以下生成的标记?

:javascript
handler = Gmaps.build('Google');
handler.buildMap({ provider: {
}, internal: {id: 'map'}}, function(){
markers = handler.addMarkers(#{raw @hash.to_json},{builders: {Marker: InfoBoxBuilder}});
handler.bounds.extendWith(markers);
handler.fitMapToBounds();
handler.getMap().setZoom(9);
});

我还在 infowindow.js.coffee 中添加了以下代码

class InfoBoxBuilder extends Gmaps.Google.Builders.Marker # inherit from base builder

# override method
create_infowindow: ->
return null unless _.isString @args.infowindow
boxText = document.createElement("div")
boxText.setAttribute("class", 'yellow') #to customize
boxText.innerHTML = @args.infowindow
@infowindow = new InfoBox(@infobox(boxText))

infobox: (boxText)->
content: boxText
pixelOffset: new google.maps.Size(-140, 0)
boxStyle:
width: "280px"

handler = Gmaps.build 'Google', { builders: { Marker: InfoBoxBuilder} }

任何帮助将不胜感激。谢谢。

最佳答案

你误读了文档,替换:

:javascript
handler = Gmaps.build('Google');
handler.buildMap({ provider: {
}, internal: {id: 'map'}}, function(){
markers = handler.addMarkers(#{raw @hash.to_json},{builders: {Marker: InfoBoxBuilder}});
handler.bounds.extendWith(markers);
handler.fitMapToBounds();
handler.getMap().setZoom(9);
});

与:

:javascript
var handler = Gmaps.build('Google', { builders: { Marker: InfoBoxBuilder} });
handler.buildMap({ internal: {id: 'map'}}, function(){
var markers = handler.addMarkers(#{raw @hash.to_json});
handler.bounds.extendWith(markers);
handler.fitMapToBounds();
handler.getMap().setZoom(9);
});

并且 class InfoBoxBuilder 应该是 class @InfoBoxBuilder 才能在 window 对象上访问

基本上在 gem 的文档中, map 创建定义在与 InfoBoxBuilder 类相同的文件中。您没有这样做:您在窗口中创建处理程序。

关于javascript - Gmaps4Rails - 自定义信息窗口不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25849028/

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