2017-10-31 2 views
0

저는 java 용 zk 프레임 워크가 새로 도입되었습니다. 맵을 생성하고 현재 위치를 dinamically 검색 할 수있는 기능을 원합니다. 현재 이것은 맵에 대한 최신 코드입니다 (lat 및 lng는 문제이므로 하드 코딩 됨).ZK 프레임 워크를 사용하여 현재 위치를 동적으로 가져 오는 방법은 무엇입니까?

 <div apply="br.com.minifrete.maps.GoogleMapsController"> 
     <!-- define the property 'zk.googleAPIkey' (or any other name) 
      as a ZK-library-property, VM-arg or system-property 
      or simply add your APIkey inline instead of ${c:property...} --> 
     <!--<script type="text/javascript" content="zk.googleAPIkey='AIzaSyANBdLQzy9acJxEWCc7UOHhpIU9Zv94ZJ0'" />--> 
     <script type="text/javascript" 
      content="zk.googleAPIkey='AIzaSyANBdLQzy9acJxEWCc7UOHhpIU9Zv94ZJ0'" /> 
     <gmaps version="3.26" id="gmaps" width="520px" 
      height="400px" showSmallCtrl="true" protocol="https"> 
      <ginfo id="info" open="true" 
       content="Hello, &lt;a href=&quot;http://www.zkoss.org\&quot;&gt;ZK&lt;/a&gt;." /> 
      <gmarker id="marker" lat="37.4410" lng="-122.1490" 
       content="Hello, &lt;a href=&quot;http://www.zkoss.org&quot;&gt;ZK&lt;/a&gt; on top of Gmarker." /> 
     </gmaps> 
    </div> 

감사합니다.

+1

로버트는 정상 [HTML 5의 위치 정보]를 통해 그것을 시도했다 (https://www.w3schools.com/html/html5_geolocation.asp)? –

+0

네, 시도했지만, 다음 기능을 구현하기가 쉬울 것이므로 ZK를 사용하여 현재 위치를 얻고 싶습니다 ... –

답변

0

ZK가 서버 측에서 실행 중이므로 위치를 얻을 기회가 없습니다. 위의 Malte의 설명에서 이미 언급 한대로 html5 geolocation api을 사용하는 유일한 방법입니다.

거기에서 얻은 정보는 사용자 지정 이벤트를 사용하여 쉽게 서버로 다시 보낼 수 있습니다. 클라이언트 측에서 이벤트를 발생시키는 법과 작곡가에서들을 수있는 방법을 보여주는 zk fiddle example을 만들었습니다. 그런 다음 좌표를 Gmaps 구성 요소로 설정하거나 새로운 Gmaps 구성 요소를 동적으로 생성 할 수 있습니다.

참고 : zkfiddle은 현재 HTTPS에서 실행되고 있지 않으므로 더미 좌표와 약간의 지연을 시뮬레이션하는 setTimeout을 사용합니다. 그러나 좌표를 요청한 코드를 제공하면 navigator.geolocation.getCurrentLocation 위의 줄이 주석 처리됩니다.

관련 문제