Jquery mobile 使用jQuery mobile、google maps API v3将infoWindow添加到地图标记

Jquery mobile 使用jQuery mobile、google maps API v3将infoWindow添加到地图标记,jquery-mobile,google-maps-api-3,infowindow,jquery-ui-map,Jquery Mobile,Google Maps Api 3,Infowindow,Jquery Ui Map,我有一个简单的脚本,当您使用jQuery mobile和Google Maps API v3单击按钮时,它会在地图上添加一个标记。我想给这个标记添加一个基本的信息窗口,这样当你点击它时,它就会显示“HelloWorld” 这看起来应该很容易,但我似乎无法获得正确的语法。我正在添加这样的标记 $('map#u canvas').gmap('addMarker',{'position':chicago}); 我似乎找不到任何好的例子,在设置标记的同时也设置了一个信息窗口 这是我的密码。如果保存在j

我有一个简单的脚本,当您使用jQuery mobile和Google Maps API v3单击按钮时,它会在地图上添加一个标记。我想给这个标记添加一个基本的信息窗口,这样当你点击它时,它就会显示“HelloWorld”

这看起来应该很容易,但我似乎无法获得正确的语法。我正在添加这样的标记

$('map#u canvas').gmap('addMarker',{'position':chicago});
我似乎找不到任何好的例子,在设置标记的同时也设置了一个信息窗口

这是我的密码。如果保存在
jquery-ui-map-3.0-rc\demos\
目录中,则所有路径都将正确。单击“添加更多标记”时,
chicago
位置中的标记将添加到地图中。我想能够点击这个标记,并有一个信息窗口弹出,说:“你好,世界!”


带谷歌地图的jQuery手机-谷歌地图jQuery插件
var chicago=new google.maps.LatLng(41.850033,-87.6500523);
var mobileDemo={'center':'41,-87','zoom':7};
var cityList=[];
函数初始化()
{
$('map#u canvas').gmap({'center':mobileDemo.center,'zoom':mobileDemo.zoom,'disableDefaultUI':false});
}
$(文档).ready(函数()
{
初始化();
$('.add markers')。单击(函数(){
$('map_canvas').gmap('addMarker',{'position':chicago});
});
});
例子
如果我将
$(document).ready(function()){}
中的代码更改为以下内容,则标记将不再显示

$(文档).ready(函数()
{
初始化();
$('.add markers')。单击(函数(){
//$('map#u canvas').gmap('addMarker',{'position':chicago,'content':“Hello World!”);
$('map_canvas').gmap({'callback':function(){
var self=这个;
addMarker({'position':chicago})。单击(函数(){
openInfoWindow({'content':'helloworld!'},this);
});
}});
});
});

我已经添加了请求打开的信息窗口。请检查以下代码:

<!doctype html>
<html lang="en">
   <head>
        <title>jQuery mobile with Google maps - Google maps jQuery plugin</title>
        <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
        <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
        <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
        <script type="text/javascript" src="http://maps.google.com/maps/api/js?v=3&sensor=false&language=en"> </script>
        <script type="text/javascript" src="http://jquery-ui-map.googlecode.com/svn/trunk/ui/min/jquery.ui.map.min.js"></script>
        <script type="text/javascript">

            var chicago = new google.maps.LatLng(41.850033,-87.6500523),
            mobileDemo = { 'center': '41,-87', 'zoom': 7 };

            function initialize() {
                $('#map_canvas').gmap({ 'center': mobileDemo.center, 'zoom': mobileDemo.zoom, 'disableDefaultUI':false });
            }

            $(document).on("pageinit", "#basic-map", function() {
                initialize();
            });

            $(document).on('click', '.add-markers', function(e) {
                e.preventDefault();
                $('#map_canvas').gmap('addMarker', { 'position': chicago } ).click(function() {
                    $('#map_canvas').gmap('openInfoWindow', {'content': 'Hello World!'}, this);
                });
            });
        </script>
    </head>
    <body>
        <div id="basic-map" data-role="page">
            <div data-role="header">
                <h1><a data-ajax="false" href="/">jQuery mobile with Google maps v3</a> examples</h1>
                <a data-rel="back">Back</a>
            </div>
            <div data-role="content">   
                <div class="ui-bar-c ui-corner-all ui-shadow" style="padding:1em;">
                    <div id="map_canvas" style="height:350px;"></div>
                </div>
                <a href="#" class="add-markers" data-role="button" data-theme="b">Add Some More Markers</a>
            </div>
        </div>      
    </body>
</html>

带谷歌地图的jQuery手机-谷歌地图jQuery插件
var chicago=new google.maps.LatLng(41.850033,-87.6500523),
mobileDemo={'center':'41,-87','zoom':7};
函数初始化(){
$('map#u canvas').gmap({'center':mobileDemo.center,'zoom':mobileDemo.zoom,'disableDefaultUI':false});
}
$(document).on(“pageinit”,“基本映射”,function()){
初始化();
});
$(文档)。在('单击','上。添加标记',函数(e){
e、 预防默认值();
$('map_canvas').gmap('addMarker',{'position':chicago})。单击(函数(){
$('map_canvas').gmap('openInfoWindow',{'content':'Hello World!'},this);
});
});
例子
没有jQuery ui映射插件的示例:

<!doctype html>
<html lang="en">
   <head>
        <title>jQuery mobile with Google maps - Google maps jQuery plugin</title>
        <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
        <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
        <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
        <script type="text/javascript" src="http://maps.google.com/maps/api/js?v=3&sensor=false&language=en"> </script>
        <script type="text/javascript">

            var cityList = [
                ['Chicago', 41.850033, -87.6500523, 1],
                ['Illinois', 40.797177,-89.406738, 2]
            ],
            demoCenter = new google.maps.LatLng(41,-87),
            map;

            function initialize()
            {
                map = new google.maps.Map(document.getElementById('map_canvas'), {
                   zoom: 7,
                   center: demoCenter,
                   mapTypeId: google.maps.MapTypeId.ROADMAP
                 });
            }

            function addMarkers()
            {
                var marker, 
                i,
                infowindow = new google.maps.InfoWindow();

                for (i = 0; i < cityList.length; i++) 
                {  
                    marker = new google.maps.Marker({
                        position: new google.maps.LatLng(cityList[i][1], cityList[i][2]),
                        map: map,
                        title: cityList[i][0]
                    });

                    google.maps.event.addListener(marker, 'click', (function(marker, i) {
                        return function() {
                            infowindow.setContent(cityList[i][0]);
                            infowindow.open(map, marker);
                        }
                    })(marker, i));
                }
            }
            $(document).on("pageinit", "#basic-map", function() {
                initialize();
            });

            $(document).on('click', '.add-markers', function(e) {
                e.preventDefault();
                addMarkers();
            });

        </script>
    </head>
    <body>
        <div id="basic-map" data-role="page">
            <div data-role="header">
                <h1><a data-ajax="false" href="/">jQuery mobile with Google maps v3</a> examples</h1>
                <a data-rel="back">Back</a>
            </div>
            <div data-role="content">   
                <div class="ui-bar-c ui-corner-all ui-shadow" style="padding:1em;">
                    <div id="map_canvas" style="height:350px;"></div>
                </div>
                <a href="#" class="add-markers" data-role="button" data-theme="b">Add Some More Markers</a>
            </div>
        </div>      
    </body>
</html>

带谷歌地图的jQuery手机-谷歌地图jQuery插件
var cityList=[
[Chicago',41.850033,-87.6500523,1],
[Illinois',40.797177,-89.406738,2]
],
demoCenter=new google.maps.LatLng(41,-87),
地图
函数初始化()
{
map=new google.maps.map(document.getElementById('map_canvas'){
缩放:7,
中心:人口中心,
mapTypeId:google.maps.mapTypeId.ROADMAP
});
}
函数addMarkers()
{
var标记,
我
infowindow=new google.maps.infowindow();
对于(i=0;i
我已经添加了请求打开的信息窗口。请检查以下代码:

<!doctype html>
<html lang="en">
   <head>
        <title>jQuery mobile with Google maps - Google maps jQuery plugin</title>
        <link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
        <script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
        <script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
        <script type="text/javascript" src="http://maps.google.com/maps/api/js?v=3&sensor=false&language=en"> </script>
        <script type="text/javascript" src="http://jquery-ui-map.googlecode.com/svn/trunk/ui/min/jquery.ui.map.min.js"></script>
        <script type="text/javascript">

            var chicago = new google.maps.LatLng(41.850033,-87.6500523),
            mobileDemo = { 'center': '41,-87', 'zoom': 7 };

            function initialize() {
                $('#map_canvas').gmap({ 'center': mobileDemo.center, 'zoom': mobileDemo.zoom, 'disableDefaultUI':false });
            }

            $(document).on("pageinit", "#basic-map", function() {
                initialize();
            });

            $(document).on('click', '.add-markers', function(e) {
                e.preventDefault();
                $('#map_canvas').gmap('addMarker', { 'position': chicago } ).click(function() {
                    $('#map_canvas').gmap('openInfoWindow', {'content': 'Hello World!'}, this);
                });
            });
        </script>
    </head>
    <body>
        <div id="basic-map" data-role="page">
            <div data-role="header">
                <h1><a data-ajax="false" href="/">jQuery mobile with Google maps v3</a> examples</h1>
                <a data-rel="back">Back</a>
            </div>
            <div data-role="content">   
                <div class="ui-bar-c ui-corner-all ui-shadow" style="padding:1em;">
                    <div id="map_canvas" style="height:350px;"></div>
                </div>
                <a href="#" class="add-markers" data-role="button" data-theme="b">Add Some More Markers</a>
            </div>
        </div>      
    </body>
</html>

带谷歌地图的jQuery手机-谷歌地图jQuery插件
var chicago=new google.maps.LatLng(41.850033,-87.6500523),
mobileDemo={'center':'41,-87','zoom':7};
函数初始化(){
$('map#u canvas').gmap({'center':mo)