Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更改标记';在谷歌地图上使用jQuery在鼠标上创建labelClass_Javascript_Jquery_Google Maps - Fatal编程技术网

Javascript 更改标记';在谷歌地图上使用jQuery在鼠标上创建labelClass

Javascript 更改标记';在谷歌地图上使用jQuery在鼠标上创建labelClass,javascript,jquery,google-maps,Javascript,Jquery,Google Maps,我已经添加了markerwithlabel.js文件,可以使用以下代码在我的google地图上成功显示带有标签的标记: markerArray[i] = new MarkerWithLabel({ position: myLatLng, map: map, icon: image, labelAnchor: new google.maps.Point(25, 30), labelClass: "marker_labels"

我已经添加了markerwithlabel.js文件,可以使用以下代码在我的google地图上成功显示带有标签的标记:

markerArray[i] = new MarkerWithLabel({
 position: myLatLng,
 map: map,
 icon: image,
                 labelAnchor: new google.maps.Point(25, 30),
                 labelClass: "marker_labels", // the CSS class for the label
                 labelStyle: {opacity: 0.75},
                 labelContent: format_num(property[6]),
 }
);
当我将鼠标移到页面上与该标记/标签对应的另一个元素上时,我想更改标签的类以突出显示它。我已经尝试使用jQuery,但无法使其正常工作:

$(".sidelisting").hover(
             function () {
                 $(markerArray[this.id].labelClass).addClass("hovered");
             },
             function () {
                 $(markerArray[this.id].labelClass).removeClass("hovered");
             }
     );

上面的代码在控制台中没有显示任何javascript错误,但在鼠标上方没有发生任何事情,将其从
labelClass
更改为
label
也不起作用,有什么想法吗?

首先在悬停函数中使用this.id。为此,类
侧列表的元素必须具有与Markerary索引匹配的ID

第二: 如果
markerary[this.id].labelClass
未定义,则它可能是“marker\u labels”,而不是DOMNode。这使得
$(markerArray[This.id].labelClass)
创建一个空的jquery对象或一个引用id为“marker\u labels”的元素的jquery对象。 您必须调用标记上的set来更改任何属性:

$(".sidelisting").hover(
         function () {
             markerArray[this.id].set("labelClass", "marker_labels hovered")
         },
         function () {
             markerArray[this.id].set("labelClass", "marker_labels")
         }
 );

首先,在悬停函数中使用this.id。为此,类
侧列表的元素必须具有与Markerary索引匹配的ID

第二: 如果
markerary[this.id].labelClass
未定义,则它可能是“marker\u labels”,而不是DOMNode。这使得
$(markerArray[This.id].labelClass)
创建一个空的jquery对象或一个引用id为“marker\u labels”的元素的jquery对象。 您必须调用标记上的set来更改任何属性:

$(".sidelisting").hover(
         function () {
             markerArray[this.id].set("labelClass", "marker_labels hovered")
         },
         function () {
             markerArray[this.id].set("labelClass", "marker_labels")
         }
 );

您正在谈论的库可能是:您正在谈论的库可能是:
侧列表的id与markerary的索引匹配。我刚刚试过你的代码,它工作得很好,非常感谢你的回答,我已经看了一个多小时,试图找到这个精确的答案。是的,
侧列表
s ID与Markerary的索引匹配。我刚刚试过你的代码,它工作得很好,非常感谢你的回答,我已经看了一个多小时,试图找到这个精确的答案。泰