Я пытаюсь добавить маркер для местоположения на основе html долготы и широты поля ввода. После ввода и нажатия кнопки поиска, которая вызывает функцию goToLocation, результат должен показать маркер в этом месте, но после выполнения этой функции масштабируется только местоположение, но маркер не отображается. Я использую версию 4.5 с открытым слоем, и вот мой код с функцией:
function goToLocation() {
vectorSource.clear();
var f = "{ \"type\": \"Feature\",\"geometry\": { \"type\": \"Point\", \"coordinates\": [" + $('#input-longitude').val() + "," + $('#input-latitude').val() + "]}}";
// var f2 = "{ \"type\": \"Feature\",\"geometry\": { \"type\": \"Point\", \"coordinates\": [" + $('#input-longitude').val() + "," + $('#input-latitude').val() + "]}}";
var iconStyle = new ol.style.Style({
image: new ol.style.Icon(/** @type {olx.style.IconOptions} */({
anchor: [0.5, 46],
anchorXUnits: 'fraction',
anchorYUnits: 'pixels',
opacity: 0.75,
src: 'img/marker.png'
}))
});
var myFeature = (new ol.format.GeoJSON()).readFeature(f);
myFeature.setStyle(iconStyle);
vectorSource.addFeature(myFeature);
map.getView().fit(vectorSource.getExtent(), map.getSize());
map.getView().fit(vectorSource.getExtent(), map.getSize());
map.getView().setZoom(12);
}