Xin chào, đây có thể là câu hỏi thực sự ngớ ngẩn nhưng tôi đang cố gắng làm cho các điểm đánh dấu biến mất khi chúng được nhấp. Điểm đánh dấu được đặt chính xác trên bản đồ nhưng khi tôi nhấp vào nó, nó không làm bất cứ điều gì. Tôi đã tự hỏi tại sao nó không hoạt động. Cảm ơn bạn!Cách ẩn Dấu trang Api của Google Maps bằng jQuery
<script type="text/javascript" src="jQuery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var myOptions = {
center: new google.maps.LatLng(40.1, -88.2),
zoom: 13,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var myLatlng = new google.maps.LatLng(40.1, -88.2);
var temp_marker = new google.maps.Marker({
position: myLatlng,
map: map,
title:"Hello World!"
});
console.log($(temp_marker));
console.log(temp_marker);
//temp_marker.click(function(){$(this).hide();});
$(temp_marker).click(function(){console.log("click is working"); $(this).hide();});
});
</script>
</head>
<body>
<div id="map_canvas" style="width:100%; height:100%"></div>
</body>
điều đó có nghĩa là tôi không thể áp dụng jQuery cho hầu hết các đối tượng Google Maps? – wayfare
@wayfare API Maps đặt lớp trừu tượng vào giữa các phần tử DOM mà nó tạo cho các điểm đánh dấu và trình triển khai. Có thể có các thủ thuật để truy cập trực tiếp vào các phần tử DOM, nhưng không có đường dẫn được hỗ trợ. Bất kỳ nỗ lực nào để giải quyết các yếu tố trực tiếp sẽ bị vỡ ngay khi Google Maps thực hiện thay đổi nội bộ; nó cũng có thể không hoạt động trên trình duyệt. –
Nếu bạn thêm tùy chọn được tối ưu hóa: false trong khai báo đánh dấu, bạn có thể truy cập nó bằng jQuery, nhưng API đặt lại tất cả cấu hình thành cấu hình mặc định khi bạn di chuyển bản đồ, phóng to hoặc thu nhỏ, vì điều này, cách tốt nhất là để sử dụng setVisible, vì nó sẽ giữ cấu hình đó. – Corner