【问题标题】:change a script to javascript将脚本更改为 javascript
【发布时间】:2013-05-29 09:48:55
【问题描述】:

我收到了calculate distance between 2 coordinates 的脚本,这里:

(function() {
        window.onload = function() {
            var map;

            //Parameter Google maps
            var options = {
              zoom: 10, //level zoom
              //posisi tengah peta
              center: new google.maps.LatLng(-7.695001, 113.996544),
              mapTypeId: google.maps.MapTypeId.ROADMAP
            };

            // Buat peta di menu MAP
            var map = new google.maps.Map(document.getElementById('peta'), options);
                var locations = [
                <?php while($rs = mysql_fetch_array($a_peta, MYSQL_ASSOC)) { ?>
                ['<?php echo $rs['nama'] ?>', <?php echo $rs['latitude'] ?>, <?php echo $rs['longitude'] ?>],
                <?php } ?>
            ];

            var infowindow = new google.maps.InfoWindow();

            var marker, i;
             /* kode untuk menampilkan banyak marker */
            for (i = 0; i < locations.length; i++) {  
                marker = new google.maps.Marker({
                    position: new google.maps.LatLng(locations[i][1], locations[i][2]),
                    map: map,
                    fmap: fmap,
                    icon: 'pics/ico.jpg'
                });

                var circle = new google.maps.Circle({
                    map: map,
                    radius: 10000,    
                    fillColor: '#AA0000'
                });
                circle.bindTo('center', marker, 'position');
                /* menambahkan event clik untuk menampikan
                 infowindows dengan isi sesuai dengan
                marker yang di klik */

                google.maps.event.addListener(marker, 'click', (function(marker, i) {
                    return function() {
                      infowindow.setContent(locations[i][0]);
                      infowindow.open(map, marker);
                    }
                })(marker, i));
            }
        };
    })();

您可以看到代码是 php 和 javascript 的混合体。我想把它移到一个完整的 javascipt 文件中,但不知道该怎么做。

这是关于“$a_peta”的脚本:

<?php
    include 'connect.php';

    $conn = mysql_connect($dbhost,$dbuser,$dbpass);
    $db = mysql_select_db($dbname);
    if($db){
        $sql="select id, nama, latitude, longitude from jarak order by id";
        $a_peta = mysql_query($sql);
    }
    else {
        print "Database NOT Found ";
        mysql_close($conn);
    }
?>

【问题讨论】:

  • window.onload?你没有使用任何 JS 库吗?
  • 这是一个令人讨厌的情况。在我看来,解决这个问题的唯一方法是重写 JS,使其使用 AJAX 调用来获取坐标。
  • 为什么不使用 xml 文件来加载所有位置?因此,您可以在 xml 文件中使用 php 查询并将其加载到您的 javascript 中。
  • @Hikmah Az 您可以创建一个包含有关 long、lat 和 name 信息的 json 文件,并通过分离 php 和 js 来解析它以获得您想要的结果
  • 这是我的应用程序中包含的一些 JS 库: jQuery Mobile v1.0a3 jQuery JavaScript Library v1.5 jQuery Mobile v1.0a3 它适用于执行地图,但我需要显示超过 1 个在我的 index.html 中映射。我使用 jquery mobile 构建了一个 android 应用程序,并希望在导航栏中的每个菜单中显示地图。

标签: php javascript android database google-maps-android-api-2


【解决方案1】:

【讨论】:

    猜你喜欢
    • 2013-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 2020-06-30
    • 1970-01-01
    相关资源
    最近更新 更多