2014-01-30 3 views
0

Я пытаюсь изменить значки погоды, которые я получаю от API, к тем, которые я нарисовал на Photoshop! Мои переменные на французском языке и комментарии тоже, если вам нужны переводы, чтобы понять мой код, пожалуйста, спросите!Как изменить значок погоды от json до значка погоды Я нарисовал себя

<script type="text/javascript"> 
     jQuery(document).ready(function($) { 
      var maLatitude;  /*Variable gobale contenant la latitude*/ 
      var maLongitude; /*Variable gobale contenant la longitude*/ 

      if (navigator.geolocation) 
       navigator.geolocation.getCurrentPosition(showPosition); 
      else 
      alert("Votre navigateur supporte pas la géolocalisation, essayez de mettre à jour votre navigateur!"); 
     }); 

     function showPosition(position){ 
      maLatitude= position.coords.latitude; 
      maLongitude= position.coords.longitude; 

     $.ajax({ 
      url : "http://api.wunderground.com/api/API_KEY/geolookup/conditions/lang:FC/q/"+maLatitude+","+maLongitude+".json", 
      dataType : "jsonp", 
      success : function(parsed_json) { 

       var location = parsed_json['location']['city']; 
       var temp_c = parsed_json['current_observation']['temp_c']; 
       var tempRessentie = parsed_json['current_observation']['feelslike_c']; 
       var wicon = parsed_json['current_observation']['icon']; 
       var condition = parsed_json['current_observation']['weather']; 
       var vent_kmh = parsed_json['current_observation']['wind_kph']; 
       var rafales = parsed_json['current_observation']['wind_gust_kph']; 
       var visibilite = parsed_json['current_observation']['visibility_km']; 

       $("div.ville").append("<div class='endroit'>" + location + " </div>"+ 
             "<div class='temp'>" + temp_c + " °C</div>"+ 
             "<div> Temp. ressentie : "+tempRessentie+" °C</div>"+ 
             "<div class='triangle'></div>"+ 
             "<div class='icone'><img src='http://icons-ak.wxug.com/i/c/k/"+wicon+".gif' alt='"+condition+"' title='"+condition+"'/></div>"+ 
             "<div class='condition'>"+condition+"</div>"+ 
             "<div>Vent : "+vent_kmh+" km/h</div>"+ 
             "<div>Rafales : "+rafales+" km/h</div>"+ 
             "<div>Visibilité : "+visibilite+" km</div>"); 
       } 
     }); 
    } 
    </script> 
+1

Так чем вопрос? Просто измените 'img'' src' на то, что вы хотите. –

+0

Но если я изменю его на другой src, он даст мне только один значок погоды, если не будет другого способа сделать это, о котором я не думал? : O – FebreezeCan

+0

В основном в зависимости от погоды дня есть другой значок погоды, который появляется при загрузке страницы! Но я сам нарисовал несколько значков погоды, и я хочу, чтобы их можно было загружать в зависимости от погоды дня! – FebreezeCan

ответ

0

Так прямо здесь:

"<div class='icone'><img src='http://icons-ak.wxug.com/i/c/k/"+wicon+".gif' alt='"+condition+"' title='"+condition+"'/></div>" 

Изменить его:

"<div class='icone'><img src='http://YourServer.com/yourIcons/"+ wicon +".gif' alt='"+condition+"' title='"+condition+"'/></div>" 

И убедитесь, что вы иконки названы так же, как они есть.

Теперь, если вы настаиваете на том, чтобы иметь разные имена, вам нужно сопоставить свои имена с вашими именами, что должно быть довольно тривиально.

+0

СПАСИБО! Я об этом не думал! – FebreezeCan

+0

Помните, что может произойти, если вы не создали замены для ** всех ** значков. Я бы порекомендовал добавить немного больше логики, чтобы сделать только выше, если имя значка - это тот, который вы распознаете. – Snixtor

+0

@Snixtor: what * might * happen - это сломанная ссылка. Вряд ли конец света. Но да, если бы я делал это, я бы добавил намного больше логики вокруг этого, чтобы сопоставить условия, о которых я знаю, о значках, которые у меня есть, и просто не оставлять значок вообще, если я его не узнаю. Я также должен убедиться, что я отключаю что-то, что я считаю более стабильным, чем имя файла их значка, потому что он может измениться. Но все это выглядело немного выше главы ОП. –

1

Создать объект поместить URL для каждого из значков погоды в объект с именем, представляющим погодные условия, а затем получить правильный URL, используя правильное имя:

var weatherIcons = { 
    snowy:"/snowyicon.jpg", 
    rainy:"/rainyicon.jpg", 
    sunny:"/sunnyicon.jpg" 
}; 

... 

var condition = parsed_json['current_observation']['weather']; 
var iconTOUse = weatherIcons[condition]; 

var element = '<img src="'+iconTOUse+'" />'; 

 Смежные вопросы

  • Нет связанных вопросов^_^