index.blade.php 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. @extends('admin.layout')
  2. @section('header')
  3. <script charset="utf-8" src="https://map.qq.com/api/js?v=2.exp"></script>
  4. <style>
  5. #location-container {
  6. min-width: 600px;
  7. min-height: 380px;
  8. }
  9. #search-location-container {
  10. margin-bottom: 20px;
  11. }
  12. </style>
  13. @endsection
  14. @section('content')
  15. <div class="wrapper wrapper-content animated fadeInRight">
  16. <div class="row" id="search-location-container">
  17. <div class="col-sm-8">
  18. <input class="form-control" type="text" id="location-keyword-input">
  19. </div>
  20. <div class="col-sm-4">
  21. <div class="btn btn-primary" id="location-keyword-search">搜索</div>
  22. <div class="btn btn-success" id="my-location-btn">我的位置</div>
  23. </div>
  24. </div>
  25. <div class="row">
  26. <div class="col-sm-12">
  27. <div id="location-container"></div>
  28. </div>
  29. </div>
  30. <input type="hidden" id="select-position-input" value="{{ $location }}">
  31. </div>
  32. @endsection
  33. @section('footer')
  34. <script type="text/javascript">
  35. $(function() {
  36. var map = new qq.maps.Map(document.getElementById('location-container'), {
  37. center: new qq.maps.LatLng('{{ $lat }}', '{{ $lng }}'),
  38. zoom: 13
  39. });
  40. //添加监听事件 获取鼠标单击事件
  41. var init_marker = new qq.maps.Marker({
  42. position: new qq.maps.LatLng('{{ $lat }}', '{{ $lng }}'),
  43. map: map
  44. });
  45. qq.maps.event.addListener(map, 'click', function(event) {
  46. init_marker.setMap(null);
  47. var marker = new qq.maps.Marker({
  48. position: event.latLng,
  49. map:map
  50. });
  51. $('#select-position-input').val(event.latLng.lat + ',' + event.latLng.lng);
  52. qq.maps.event.addListener(map, 'click', function(event) {
  53. marker.setMap(null);
  54. });
  55. });
  56. var searchService = new qq.maps.SearchService({
  57. map : map
  58. });
  59. $('#location-keyword-search').on('click', function () {
  60. var regionText = $('#location-keyword-input').val();
  61. searchService.setLocation(regionText);
  62. searchService.search();
  63. });
  64. $('#my-location-btn').on('click', function () {
  65. console.log(navigator.geolocation);
  66. if (navigator.geolocation) {
  67. navigator.geolocation.getCurrentPosition(function (position) {
  68. console.log(position);
  69. var lat = position.coords.latitude;
  70. var lng = position.coords.longitude;
  71. console.log(lat, lng);
  72. //调用地图命名空间中的转换接口 type的可选值为 1:GPS经纬度,2:搜狗经纬度,3:百度经纬度,4:mapbar经纬度,5:google经纬度,6:搜狗墨卡托
  73. qq.maps.convertor.translate(new qq.maps.LatLng(lat, lng), 1, function(res){
  74. //取出经纬度并且赋值
  75. var latlng = res[0];
  76. console.log(latlng);
  77. var map = new qq.maps.Map(document.getElementById("container"), {
  78. center: latlng,
  79. zoom: 13
  80. });
  81. //设置marker标记
  82. var marker = new qq.maps.Marker({
  83. map : map,
  84. position : latlng
  85. });
  86. });
  87. });
  88. }
  89. else {
  90. alert('浏览器不支持定位')
  91. }
  92. });
  93. });
  94. </script>
  95. @endsection