如何以编程方式打开传单标记的工具提示?

时间:2016-09-30 11:08:19

标签: javascript jquery leaflet

我正在使用传单,我有一些标记。如果我将鼠标悬停在标记图标上,其工具提示会自动打开,显示相关数据。我将我的标记存储在名为woMarkers的变量中,除了此功能外,所有内容都可以使用它。如果我做这样的事情:

$(woMarkers[0]._icon).hover();

然后没有任何反应,没有错误,工具提示无法打开。这些是我正在使用的选项:

        var woOptions = {
            fitBounds: true,
            enableLandmarkLink: false,
            reDrawBounds: true,
            showControls: true,
            getName: function(record) {
                return record[('Job Number' in record ? 'Job Number' : 'Name')];
            },
            markerIconTemplate: '<div class="fi-marker-container %6" data-workorder="%3"><a class="icon" style="color: %4;">%1%2</a></div><div class="fi-marker-pointer-container"><div class="fi-marker-pointer %6"></div></div>',
            markerSelection: true,
            displayLabels: mapLabels,
            additionalMarkerMarkup: {
                column: 'Status', /* Display additional Marker html pending on a column value */
                values: {
                    '1': '<img class="top-right-icon" src="/Images/Icons/Help.png" />',
                    '2': '<img class="top-right-icon" src="/Images/Icons/CheckCircle.png" />',
                    '3': '<img class="top-right-icon" src="/Images/Icons/CheckCircle.png" />',
                    '4': '<img class="top-right-icon" src="/Images/Icons/CheckCircle.png" />',
                    '5': '<img class="top-right-icon" src="/Images/Icons/Warning.png" />'
                },
                columns: ["Workorder #"]
            },
            layer: new L.LayerGroup()
        };

所以,我的问题如下:如果我有一个标记对象,我怎么能以编程方式打开它的工具提示?

2 个答案:

答案 0 :(得分:4)

您可以使用传单built-in event management methods简单地使用marker.fire("mouseover")

演示:https://jsfiddle.net/3v7hd2vx/92/

答案 1 :(得分:1)

如果您使用传单工具提示,可以通过调用:

打开它
marker.openTooltip();

请参阅documentation