Все было ок, но сегодня перестали работать гугл карты (маршруты). google API перестали поддерживать IE11 и все пошло по 3.14... Как задать макет макет который грузится в поле HTML документа, чтобы он открылся в тонком клиенте?
ЗЫ В браузере google hrome табличный документ отображается нормально и все работает!
ЗЫ 1C написала что она перешла с 8.3.14 на Web kit, но как увязывать? API google поддерживают: Мазилу, гугл хром, Eddge, но про Web kit там нет ничего.
Х
ЗЫ В браузере google hrome табличный документ отображается нормально и все работает!
ЗЫ 1C написала что она перешла с 8.3.14 на Web kit, но как увязывать? API google поддерживают: Мазилу, гугл хром, Eddge, но про Web kit там нет ничего.
Х
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Что привести? Не будет отображаться код ниже в поле HTML документа и в IE будет ошибка IE11, то Ваш браузер не поддерживается Google Maps JavaScript API. Выберите другой. Но в гугл хроме все будет работать
<!DO CTYPE html>
<ht ml>
<head>
<met a name="viewport" content="initial-scale=1.0, user-scalable=no" />
<met a http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<met a http-equiv="X-UA-Compatible" content="IE=11">
<st yle type="text/css">
html { height: 100% }
body { height: 100%; margin: 0px; padding: 0px }
#map { height: 100% }
</style>
<sc ript type="text/javascript" src="https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/markerclusterer.js"></sc ript>
<sc ript type="text/javascript" src="https://google.com/maps/api/js?key={{{{{{{{{{{{{{{{{}}}}}}}}}}}}}}}}}}}}}}}}}}}}&callback=initialize&language=ru" async defer></sc ript>
<sc ript type="text/javascript">
//rAАГP
// var debugger = document.querySelector('#debugDiv');
// debugger.style.display = 'block';
// if (typeof console != "undefined")
// if (typeof console.log != 'undefined')
// console.olog = console.log;
// else
// console.olog = function() {};
//
// console.log = function() {
// console.olog.apply(console, arguments);
// debugger.innerHTML += '<div style="padding: 2px 0;">' + Array.prototype.join.call(arguments, ' ') + '</div>';
// };
// console.error = console.debug = console.info = console.log;
var latlng;
var markers = {};
var markers2 = [];
var myMap;
var index = 1;
var directionsDisplay;
var directionsService;
var infoWindow;
var trafficLayer;
var markerCluster;
var mcOptions;
var trafficOn = false;
var pointArray = [];
var polygons = [];
var pos = [47.297996,39.650118];//[55.75, 37.62]; //®-» .» - [55.75, 37.62]
function initialize() {
directionsDisplay = new google.maps.DirectionsRenderer();
directionsDisplay2 = new google.maps.DirectionsRenderer();
directionsService = new google.maps.DirectionsService();
infoWindow = new google.maps.InfoWindow();
trafficLayer = new google.maps.TrafficLayer();
latlng = new google.maps.LatLng(pos[0], pos[1]);
var myOptions = {
zoom: 12,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
disableDoubleClickZoom: true,
panControl: true,
zoomControl: true,
mapTypeControl: false,
scaleControl: true,
streetViewControl: true,
overviewMapControl: true
};
myMap = new google.maps.Map(document.getElementById("map"),
myOptions);
google.maps.event.addListener(myMap, 'dblclick', function(event) {
infoWindow.close();
addMarker(event.latLng);
});
markerCluster = new MarkerClusterer(myMap, [], {imagePath: 'https://developers.google.com/maps/documentation/javascript/examples/markerclusterer/m'});
};
//Ў«я 0p . я ,qЌ
function addMarker(location) {
document.getElementById('CoordX').value = location.lat();
document.getElementById('CoordY').value = location.lng();
marker = new google.maps.Marker({
position: location,
map: myMap,
title: '®ч' + index
});
infoWindow.setContent(marker.title);
infoWindow.open(myMap, marker);
google.maps.event.addListener(marker, 'click', function() {
var mark = this;
var latLng = mark.getPosition();
infoWindow.setContent(mark.title);
infoWindow.open(myMap, mark);
});
markers.push(marker);
index++;
//m ца{ая pb 1э
document.getElementById('map').click();
}
function calcRoute(options) {
//тя"l а1 p эх 0%ў `чhя
///Ўу `4, LatLng
var option1 = options[0]; //эьэ к
var option2 = options[1]; //.f·э кJ var option3 = options[2]; //накJ var start = new google.maps.LatLng(option1[0], option1[1]); //pй
var end = new google.maps.LatLng(option3[0], option3[1]); //±dэ
//«%2gы2кJ var waypts = [];
if (option2.length > 0) {
for (var i = 0, l = option2.length; i < l; i++) {
temp = option2[i];
Qcoord = new google.maps.LatLng(temp[0], temp[1])
waypts.push({
location: Qcoord,
stopover: true
});
}
}
//return;
var request = {
origin: start,
destination: end,
waypoints: waypts,
optimizeWaypoints: true,
travelMode: google.maps.TravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
//directionsDisplay.setMap(myMap);
//directionsDisplay.setDirections(response);
var total = 0;
var totalTime = 0;
var SpisokTochek = "";
var myroute = response.routes[0];
for (i = 0; i < myroute.legs.length; i++) {
total += myroute.legs[i].distance.value;
totalTime += myroute.legs[i].duration.value;
SpisokTochek += myroute.legs[i].end_location + ';';
}
total = total / 1000;
document.getElementById('RouteInfo').value = "" + total;
document.getElementById('RouteInfoTime').value = "" + totalTime;
document.getElementById('RouteSpisokTochek').value = SpisokTochek;
document.getElementById('waypoint_order').value = myroute.waypoint_order;
//m ца{ая pb 1э
var evt = document.createEventObject();
document.body.fireEvent('ondatasetcomplete', evt);
} else {
alert(status);
}
});
}
function calcRouteoptimizeFalse(options, options2) {
//тя"l а1 p эх 0%ў `чhя
///Ўу `4, LatLng
var option1 = options[0]; //эьэ к
var option2 = options[1]; //.f·э кJ var option3 = options[2]; //накJ var start = new google.maps.LatLng(option1[0], option1[1]); //pй
var end = new google.maps.LatLng(option3[0], option3[1]); //±dэ
//«%2gы2кJ var waypts = [];
if (option2.length > 0) {
for (var i = 0, l = option2.length; i < l; i++) {
temp = option2[i];
Qcoord = new google.maps.LatLng(temp[0], temp[1])
waypts.push({
location: Qcoord,
stopover: true
});
}
}
var request = {
origin: start,
destination: end,
waypoints: waypts,
optimizeWaypoints: false,
travelMode: google.maps.TravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setMap(myMap);
directionsDisplay.setDirections(response);
var markerCounter = 1; //rч 0pЌ
// ЎЁ1Ё 0pы
var route = response.routes[0];
// 0p эа ЁmН
addMarker(route.legs[0].start_location, markerCounter++);
// 0pы eа0ші, «ючаЌ
var lim = route.legs.length;
if (options2 != 0 ) {lim = lim -1}
for (var i = 0; i < lim; i++) {
addMarker(route.legs[i].end_location, markerCounter++);
}
} else {
alert(status);
}
});
if (options2 != 0 ) {
var option1 = options2[0]; //эьэ к
var option2 = options2[1]; //.f·э кJ var option3 = options2[2]; //накJ var start = new google.maps.LatLng(option1[0], option1[1]); //pй
var end = new google.maps.LatLng(option3[0], option3[1]); //±dэ
//«%2gы2кJ var waypts = [];
if (option2.length > 0) {
for (var i = 0, l = option2.length; i < l; i++) {
temp = option2[i];
Qcoord = new google.maps.LatLng(temp[0], temp[1])
waypts.push({
location: Qcoord,
stopover: true
});
}
}
var request = {
origin: start,
destination: end,
waypoints: waypts,
optimizeWaypoints: false,
travelMode: google.maps.TravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay2.setMap(myMap);
directionsDisplay2.setDirections(response);
var markerCounter = 27; //rч 0pЌ
// ЎЁ1Ё 0pы
var route = response.routes[0];
// 0p эа ЁmН
addMarker(route.legs[0].start_location, markerCounter++);
// 0pы eа0ші, «ючаЌ
for (var i = 0; i < route.legs.length; i++) {
addMarker(route.legs[i].end_location, markerCounter++);
}
} else {
alert(status);
}
});
}
}
/** дr 0p иўы-% i */
function addMarker(position, i) {
return new google.maps.Marker({
icon: 'http://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=' + i + '|FF0000|000000',
// icon: {url: "http://maps.google.com/mapfiles/marker_purple.png",
// scaledSize: new google.maps.Size(24, 48)},
//title: i,
//zIndex: 1,
//labelContent: i,
position: position,
map: myMap
});
}
function Reset() {
directionsDisplay.setMap(null);
for (var i = 0; i <100; i++) {
markers2[i].setMap(null);
}
markers = {};
index = 1;
markerCluster.clearMarkers();
for (var i = 0; i < polygons.length; i++) {
polygons[i].setMap(null);
}
polygons = [];
for (var i = 0; i < pointArray.length; i++) {
pointArray[i].setMap(null);
}
pointArray = [];
}
function ResetRoute() {
directionsDisplay.setMap(null);
for (var i = 0; i < polygons.length; i++) {
polygons[i].setMap(null);
}
polygons = [];
for (var i = 0; i < pointArray.length; i++) {
pointArray[i].setMap(null);
}
pointArray = [];
}
function ResetMarker(Ind){
directionsDisplay.setMap(null);
markers[Ind].setMap(null);
}
function ChangeMarker(Ind, numColor){
const urlOrigin = 'https://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=%E2%80%A2|';
markers[Ind].setIcon(urlOrigin + numColor);
}
function FindAdres(Adres, nomTsveta, titleAdress) {
var geocoder = new google.maps.Geocoder();
geocoder.geocode({
'address': Adres
}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
latlng = results[0].geometry.location;
myMap.panTo(latlng);
if (nomTsveta == 1) {
marker = new google.maps.Marker({
map: myMap,
icon: {url: "http://maps.google.com/mapfiles/marker_orange.png",
scaledSize: new google.maps.Size(12, 24)},
position: latlng,
title: "" + titleAdress + " " + Adres
});
};
if (nomTsveta == 2) {
marker = new google.maps.Marker({
map: myMap,
icon: {url: "http://maps.google.com/mapfiles/marker_yellow.png",
scaledSize: new google.maps.Size(24, 24)},
position: latlng,
title: "" + titleAdress + " " + Adres
});
};
if (nomTsveta == 3) {
marker = new google.maps.Marker({
map: myMap,
icon: {url: "http://maps.google.com/mapfiles/marker_purple.png",
scaledSize: new google.maps.Size(24, 24)},
position: latlng,
title: "" + titleAdress + " " + Adres
});
};
if (nomTsveta == 4) {
marker = new google.maps.Marker({
map: myMap,
icon: {url: "http://maps.google.com/mapfiles/marker_grey.png",
scaledSize: new google.maps.Size(24, 24)},
position: latlng,
title: "" + titleAdress + " " + Adres
});
};
if (nomTsveta == 5) {
marker = new google.maps.Marker({
map: myMap,
icon: {url: "http://maps.google.com/mapfiles/marker_black.png",
scaledSize: new google.maps.Size(24, 24)},
position: latlng,
title: "" + titleAdress + " " + Adres
});
};
document.getElementById('retunFeErr').value = 'ok';
marker.addListener('click', function() {
var mark = this;
document.getElementById('CoordX').value = mark.getPosition().lat();
document.getElementById('CoordY').value = mark.getPosition().lng();
document.getElementById('NomMarkera').value = mark.title;
});
markers[titleAdress] = marker;
markers2[titleAdress] = marker;
infoWindow.setContent(marker.title);
infoWindow.open(myMap, marker);
}
else if (status == google.maps.GeocoderStatus.OVER_QUERY_LIMIT){
document.getElementById('retunFeErr').value = 'OVER_QUERY_LIMIT';
//alert("А%e n¤.-: " +Adres+" " + status);
}
else {
document.getElementById('retunFeErr').value = "NOT_FOUND";
//alert("hчо ээm " +Adres+" " + status);
}
});
}
function ReverseSearchAdres(CoordX, CoordY, Adres, Lab) {
latlng = new google.maps.LatLng(CoordX, CoordY);
myMap.panTo(latlng);
var marker = new google.maps.Marker({
map: myMap,
//position: latlng,
//animation: google.maps.Animation.BOUNCE,
//title: Adres
icon: {url: "http://maps.google.com/mapfiles/marker_orange.png",
scaledSize: new google.maps.Size(24,24)},
position: latlng,
title: false,
label: "" + Adres + Lab,
//draggable:true
});
marker.addListener('click', function() {
var mark = this;
document.getElementById('CoordX').value = this.getPosition().lat();
document.getElementById('CoordY').value = mark.getPosition().lng();
document.getElementById('NomMarkera').value = Adres;
});
markers[Adres] = marker;
markers2[Adres] = marker;
infoWindow.setContent(marker.title);
infoWindow.open(myMap, marker);
}
function addToPointArray(CoordX, CoordY, ID, Text) {
var latLng = new google.maps.LatLng(CoordX, CoordY);
var point = new google.maps.Marker({
'position': latLng
});
pointArray.push(point);
}
function drawCluster() {
// Add a marker clusterer to manage the pointArray.
markerCluster.addMarkers(pointArray);
}
function createPolygon(ArrayPoint, Name, color) {
//дl 1 ®- pш`nі«ьэJ var paths = [];
for (var i = 0, l = ArrayPoint.length; i < l; i++) {
var temp = ArrayPoint[i];
Qcoord = new google.maps.LatLng(temp[0], temp[1])
paths.push(Qcoord);
};
// n nі«ьэ
myPolygon = new google.maps.Polygon({
paths: paths,
strokeColor: "#0000FF",
strokeOpacity: 0.6,
strokeWeight: 5,
fillColor: color
});
myPolygon.setMap(myMap);
polygons.push(myPolygon);
}
function myMapCenter(){
myMap.setZoom(6);
latlng = new google.maps.LatLng(47.297996, 39.650118);
myMap.setCenter(latlng);
}
function WebClientClick() {
//и p и¬ ®-¬ `ч/k**" . ээ`%w»-`®-Ќ
document.getElementById('CoordX').value = "0";
document.getElementById('CoordY').value = "0";
var WebClientOperation = document.getElementById("WebClientOperation").value;
switch (WebClientOperation) {
case "0": // эо эkl
var a = 1;
default: // / ээцЌ
eval(WebClientOperation);
}
document.getElementById('WebClientOperation').value = "0";
}
</sc ript>
</head>
<body>
<div id="debugDiv" style="display:none;position: absolute;z-index:999;top:0;right:0;width: 400px;background: rgb(255,255,255);max-height:300px;overflow:auto;padding: 5px;" >Debugger:</div>
<div id="map" style="width:100%; height:100%"></div>
<input type="hidden" id="CoordX" name="CoordX" value="0"></input>
<input type="hidden" id="CoordY" name="CoordY" value="0"></input>
<input type="hidden" id="retunFeErr" name="retunFeErr" value="_________"></input>
<input type="hidden" id="StrAdress" name="StrAdress" value="r #кѕ</input>
<input type="hidden" id="NomMarkera" name="NomMarkera" value="0"></input>
<input type="hidden" id="RouteInfo" name="RouteInfo" value=""></input>
<input type="hidden" id="RouteInfoTime" name="RouteInfoTime" value=""></input>
<input type="hidden" id="RouteSpisokTochek" name="RouteSpisokTochek" value=""></input>
<input type="hidden" id="waypoint_order" name="waypoint_order" value=""></input>
<input type="hidden" id="WebClientOperation" name="WebClientOperation" value="0"></input>
<input type="hidden" id="WebClient" name="WebClient" on click="WebClientClick();"></input>
</body>
</html>
Показать
Нам помогло указание версии API.
Применительно к вашему примеру строка <sc ript type="text/javascript" src="https://google.com/maps/api/js?key={{{{{{{{{{{{{{{{{}}}}}}}}}}}}}}}}}}}}}}}}}}}}&callback=initialize&language=ru" async defer></sc ript> требует дописки фразы "&v=quarterly". Или как вариант можно указать непосредственно номер версии, на сегодняшний день самая свежая это "&v=3.50".
Применительно к вашему примеру строка <sc ript type="text/javascript" src="https://google.com/maps/api/js?key={{{{{{{{{{{{{{{{{}}}}}}}}}}}}}}}}}}}}}}}}}}}}&callback=initialize&language=ru" async defer></sc ript> требует дописки фразы "&v=quarterly". Или как вариант можно указать непосредственно номер версии, на сегодняшний день самая свежая это "&v=3.50".
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот