代码之家  ›  专栏  ›  技术社区  ›  Enriquev

javascript proj4js问题

  •  2
  • Enriquev  · 技术社区  · 15 年前

    您好,我在使用proj4js库时遇到问题。以下是我的资料来源:

    <html>
       <head>
          <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
          <script type="text/javascript" src="lib/proj4js-combined.js"></script>
       </head>
    
       <script type="text/javascript">
        function go()
        {
            var lon = document.getElementById("xOrg").value;
            var lat = document.getElementById("yOrg").value;
            var reprojected = reproject(Number(lon),Number(lat));
    
            document.getElementById("xNew").value = reprojected.x;
            document.getElementById("yNew").value = reprojected.y;
        }
    
        function reproject(lon,lat)
            {
                var sourceSys = new Proj4js.Proj('WGS84');
                var destSys = new Proj4js.Proj('EPSG:32187');
    
                var pointSource = new Proj4js.Point(lon,lat);
                var pointDest = Proj4js.transform(sourceSys, destSys, pointSource);
    
                return pointDest;
            }
       </script>
    
       <body>
        <div>
        <input id="xOrg" type="text" value="-73.56"/>
        <input id="yOrg" type="text" value="45.49"/>
        </div>
        <div>
        <input id="xNew" type="text" value=""/>
        <input id="yNew" type="text" value=""/>
        </div>
        <div>
            <input type="button" value="go" onclick="go()"/>
        </div>
       </body>
    </html>
    

    我不明白为什么重新投影只在我点击两次按钮时才起作用,当我第一次点击按钮时,会返回相同的值。似乎只有当我点击按钮两次或更多的时候它才起作用。这是在线页面: click

    2 回复  |  直到 15 年前
        1
  •  3
  •   Enriquev    15 年前
    var sourceSys = new Proj4js.Proj('WGS84'); 
    var destSys = new Proj4js.Proj('EPSG:32187'); 
    

    到这里:

    ...
    
    <script type="text/javascript">  
        var sourceSys = new Proj4js.Proj('WGS84'); 
        var destSys = new Proj4js.Proj('EPSG:32187'); 
    
        function go()
    {
    ...  
    

    不管是什么原因,它现在起作用了…

        2
  •  0
  •   winwaed    15 年前

    我无法加载页面,但这是刷新问题吗?也就是说,在设置XNew和YNEW输入标记的值之后,是否可以显式地使它们立即刷新?