Ich benutze jquery und ein JSON-Array, um die aktuelle Mondphase und Sonnenaufgang/Uhrzeit auf einer Website anzuzeigen. Dies funktioniert gut für Sonnenaufgang/Set aber für Mondphasen habe ich ein Problem festgestellt.Verwenden von Jquery zum Anzeigen von JSON-Daten aus der API - undefiniert
Wenn die "nächste Phase" am selben Tag ist, an dem die Daten angefordert werden, werden 2 andere Felder entfernt - "currentphase" und "fracillum". Dies bedeutet, dass ich nicht die Phase oder die aktuellen Beleuchtung 4-mal pro Monat angezeigt werden kann ...
Zum Beispiel unter dem Link fracillum und aktuelle Phase zeigt: http://api.usno.navy.mil/rstt/oneday?date=today&coords=54.97N,1.61W&tz=0
aber wird aus diesen Daten nicht angegeben: http://api.usno.navy.mil/rstt/oneday?date=01/28/2017&coords=54.97N,1.61W&tz=0
ich habe den Code geschrieben zu sagen, wenn curphase und fracillum und undefiniert ist die clostestphase ist „New Moon“ oder „Vollmond“ dann fracillum von „0% oder‚100%‘angezeigt sind.
Bitte kann jemand identifizieren, was ich falsch mache?
$(document).ready(function(){
$.get("http://api.usno.navy.mil/rstt/oneday?date=01/28/2017&coords=54.97N,1.61W&tz=0", function(data){
checkPhase(data);
});
});
$(document).ready(function(){
$("#suntimes").click(function(){
$("#sun").toggle("slide");
});
});
$(document).ready(function(){
$("#moontimes").click(function(){
$("#moon").toggle("slide");
});
});
$(document).ready(function(){
$("#Mobilesuntimes").click(function(){
$("#Mobilesun").slideToggle();
});
});
$(document).ready(function(){
$("#Mobilemoontimes").click(function(){
$("#Mobilemoon").slideToggle();
});
});
function checkPhase(data){
if(data.curphase == "undefined" && data.closestphase.phase == "New Moon"){data.fracillum == "0%";}
else if(data.curphase == "undefined" && data.closestphase.phase == "Full Moon")
{data.fracillum == "100%";}
$("#sun").append("<p><b>Newcastle, UK</b><br />Sunrise: " + data.sundata[1].time + " AM<br />Sunset: " + data.sundata[3].time + " PM</p>");
$("#moon").append("<p><b>Newcastle, UK</b><br />Percentage Illuminated: " + data.fracillum + "<br />Moon Phase: " + data.curphase + "</p>");
$("#Mobilesun").append("<p><b>Newcastle, UK</b><br />Sunrise: " + data.sundata[1].time + " AM<br />Sunset: " + data.sundata[3].time + " PM</p>");
$("#Mobilemoon").append("<p><b>Newcastle, UK</b><br />Percentage Illuminated: " + data.fracillum + "<br />Moon Phase: " + data.curphase + "</p>"
);
}
Ich habe das verwendet und es scheint perfekt funktioniert zu haben, danke! –