rai*_*lsy 4 ajax jquery google-maps ruby-on-rails
我可以显示带有标记的谷歌地图没问题,但是当使用ajax刷新部分时,我无法在部分内显示地图.我猜这是因为当使用ajax时,最终的初始化行没有被触发:
function initialize() {
var myLatlng = new google.maps.LatLng(-25.363882,131.044922);
var mapOptions = {
zoom: 4,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
var marker = new google.maps.Marker({
position: myLatlng,
map: map,
title: 'Hello World!'
});
}
google.maps.event.addDomListener(window, 'load', initialize);
Run Code Online (Sandbox Code Playgroud)
那么我可以使用其中一个ajax成功处理程序来初始化地图吗?我试过这个没有运气,但语法可能是错误的,我不知道在哪里放这个:
$(document).ajaxSuccess(function() {
google.maps.event.initialize;
});
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
编辑:
我#response通过添加remote => true到链接来加载属性/ index.html.erb页面的div中的部分_property_details.html.erb ,这是show.js.erb代码:
properties/show.js.erb
$("#response").html("<%= escape_javascript(render('property_details')) %>");
Google代码全部位于properties/index.html.erb脚本标记的页面底部.
这应该使它工作,假设您的部分刷新是使用jQuery完成的.
google.maps.event.addDomListener(window, 'load', initialize);
$(document).ajaxStop(initialize);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4427 次 |
| 最近记录: |