【发布时间】:2026-01-03 11:45:01
【问题描述】:
我在 Angular 4 应用程序中将 AgmMap 用于地图。如何在显示信息窗口的 agm-marker 中实现鼠标悬停事件。我需要在标记鼠标悬停时打开信息窗口。如何在我的函数 onMouseOver 中检索 infowindow 实例以打开它? 这是我的 map.component.html 文件
<agm-map [latitude]="lat" [longitude]="lng">
<agm-marker *ngFor="let m of markers; let i = index"
[latitude]="m.lat"
[longitude]="m.lng"
(markerClick)="clickedMarker(m, i)"
[iconUrl]="m.iconUrl">
<agm-info-window>{{m.label}}</agm-info-window>
</agm-marker>
</agm-map>
和map.component.ts文件
import { Component, OnInit } from '@angular/core';
import { Router, ActivatedRoute } from '@angular/router';
import { AlertService, AuthenticationService } from '../_services/index';
import { Ng4DropdownModule } from 'ng4-material-dropdown';
import { Http } from '@angular/http';
import 'rxjs/add/operator/map';
@Component({
moduleId: module.id,
templateUrl: './map.component.html',
styleUrls: ['./map.component.css']
})
export class MapComponent implements OnInit {
title: string = 'My first AGM project';
lat: number = 51.673858;
lng: number = 7.815982;
ngOnInit() {
}
markers: marker[] = [
{
lat: 51.673858,
lng: 7.815982,
label: 'Map A',
draggable: true,
iconUrl:'http://maps.google.com/mapfiles/ms/icons/green.png'
},
{
lat: 51.373858,
lng: 7.215982,
label: 'Map B',
draggable: false,
iconUrl:'http://maps.google.com/mapfiles/ms/icons/red.png'
},
{
lat: 51.723858,
lng: 7.895982,
label: 'Map C',
draggable: true,
iconUrl:'http://maps.google.com/mapfiles/ms/icons/yellow.png'
}
];
constructor() {
}
clickedMarker(marker:marker, index:number)
{
console.log('Clicked Marker:'+ marker.label+' at index'+index);
}
}
interface marker {
lat: number;
lng: number;
label?: string;
draggable: boolean;
iconUrl?: string;
}
你能帮帮我吗? AgmMap如何实现鼠标悬停事件?
【问题讨论】:
标签: angular typescript angular2-services