tho*_*nch 5 javascript google-maps ruby-on-rails
在我的Rails应用程序中,我有一个帮助方法location,它获取给定IP地址的坐标,并使它们可用于所有控制器和视图.例如,location.latitude返回用户的纬度.你明白了.
我还有一些Javascript可以根据给定的纬度/经度对从Google Maps API中绘制地图.问题是我不知道如何将locationparams 传递给JavaScript!
JavaScript位于'application.js'中,如下所示:
$(document).ready(function()
{
//Map options...I want the params to go into the var 'MapOptions' below
function initialize() {
var mapOptions = {
center: new google.maps.LatLng(40.764698,-73.978972),
zoom: 13,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
//Setup and Draw the Map...
//....................................
};
Run Code Online (Sandbox Code Playgroud)
地图本身就像在HTML中一样被调用.通过params没有明显的方法.
<div id="map_canvas">
<!-- The Map gets drawn here! -->
</div>
Run Code Online (Sandbox Code Playgroud)
我知道这可能是一个显而易见的问题,但我以前从未将这个参数从我的应用程序传递给Javascript.
我认为数据属性在这里运作良好.
HTML
<div id="map_canvas" data-latitude="40.764698" data-longitude="-73.978972">
<!-- The Map gets drawn here! -->
</div>
Run Code Online (Sandbox Code Playgroud)
或与你的助手
<div id="map_canvas" data-latitude="<%= location.latitude %>" data-longitude="<%= location.longitude %>">
<!-- The Map gets drawn here! -->
</div>
Run Code Online (Sandbox Code Playgroud)
JS
$(document).ready(function() {
//Map options...I want the params to go into the var 'MapOptions' below
function initialize() {
var mapDiv = $('#map_canvas');
var lat = mapDiv.data('latitude'),
lng = mapDiv.data('longitude');
var mapOptions = {
center: new google.maps.LatLng(lat,lng),
zoom: 13,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
//Setup and Draw the Map...
//....................................
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10312 次 |
| 最近记录: |