2017-02-28 29 views
-2

我正在嘗試爲Free Code Camp創建一個天氣應用程序,並且當我在本地主機上加載所有內容時它工作正常。每當我嘗試在Codepen上運行它,但它不起作用。爲什麼CodePen上的地理位置不工作?

這裏的鏈接到我的Codepen:http://codepen.io/GeorgeMort/pen/LWpXPZ

這裏是我的JS:

window.onload = function() { 
    temperature = document.getElementById("temperature"); 
    loc = document.getElementById("location"); 
    icon = document.getElementById("icon"); 

    if (navigator.geolocation) { 
    var showPosition = function(position) { 
     updateByGeo(position.coords.latitude, position.coords.longitude); 
    }; 
    navigator.geolocation.getCurrentPosition(showPosition); 
    } else { 
    var zip = window.prompt("Unable to find your location. What is your zip code?"); 
    updateByZip(zip); 
    } 
}; 

--AND--

function updateByGeo(lat, lon) { 
    var url = "http://api.openweathermap.org/data/2.5/weather?" + "lat=" + lat + "&lon=" + lon + "&APPID=" + APPID; 

    sendRequest(url); 
} 

我試着使用CodePen在Chrome和蘋果瀏覽器。我在這個項目中遇到了更多使用Chrome的問題,所以真的可以使用一些幫助讓它在Safari上運行。

我真的很感謝幫助。謝謝!

+0

猜你沒有在您的控制檯看上去〜*「'getCurrentPosition()'和'watchPosition()'沒有在不安全的根源不再起作用。要使用此功能,你應該考慮你的應用程序切換到安全例如HTTPS。「* – Phil

回答

1

嘗試相同的鏈接,但使用HTTPS ...!

https://codepen.io/GeorgeMort/pen/LWpXPZ

此API僅適用於安全網站。

+0

該代碼是因爲SO堅持我添加了一些CodePen鏈接。 –

+0

我想我不理解什麼。您提供的HTTPS鏈接仍然無法提供。我試着改變我的代碼中的任何鏈接,從HTTP到HTTPS,我仍然沒有獲得任何地理定位。 –

+0

啊,它對我來說很有用,因爲它要求我的位置。你的問題不是嗎?如果是這樣,您可能已經拒絕了您的瀏覽器設置。 –

相關問題