Проблемы с выводом города по ip в js

В теле выводит город определяемый по айпи (вывод на страницу), а после сравнивает город с яндекса с городом в условии, если является верным, меняет ссылку. Проблема в том, что если добавить отрезок где идет сравнение, то исчезает город на странице. Не могу понять в чем дело, буду благодарен за помощь.

<head><script type="text/javascript">
  window.onload = function () {
      jQuery("#user-city").text(ymaps.geolocation.city);
      jQuery("#user-region").text(ymaps.geolocation.region);
      jQuery("#user-country").text(ymaps.geolocation.country);    
  }
</script></head>
<body><a class="navelement3"><span id="user-city">


</span></a>


<script type="text/javascript"> 
  window.onload = function () {
   var city = ymaps.geolocation.city;
    if(city == 'Краснодар'){
       document.getElementById("navelement2").href = "../animals/sobaka.html";
     }
}
</script>

</body>


Ответы (1 шт):

Автор решения: Aziz Umarov

Проблема в том что вы переопределяете window.onload который определен в начале. Добавьте проверку также в начале и будет думаю всё хорошо.

<head><script type="text/javascript">
  window.onload = function () {
      jQuery("#user-city").text(ymaps.geolocation.city);
      jQuery("#user-region").text(ymaps.geolocation.region);
      jQuery("#user-country").text(ymaps.geolocation.country); 

      var city = ymaps.geolocation.city;
      if(city == 'Краснодар'){
       document.getElementById("navelement2").href = "../animals/sobaka.html";
      }   
  }
</script></head>
<body>
  <a class="navelement3">
     <span id="user-city"></span>
  </a>
</body>

→ Ссылка