0

シンプルな天気プラグインを使用してスマートにしようとしています。これにより、IP に基づいて地理位置情報サービスを呼び出して、ユーザーが属する場所を把握できます。Chrome、FF で動作します。IEではありませんが。何が問題なのか、IE で次のような問題が発生するのはなぜですか?? ここでこのクロスドメイン呼び出しの問題が発生しているようです..完全なフィドル: http://jsfiddle.net/XfhQK/1/

 jQuery.getJSON('http://freegeoip.net/json/', function(data) {
     jQuery.simpleWeather({
        zipcode: data["zipcode"],
        woeid: '',
        location: '',
        unit: 'f',
        success: function(weather) {
          html = '<h2>'+weather.temp+'&deg;'+weather.units.temp+'</h2>';
          html += '<ul><li>'+weather.city+', '+weather.region+'</li>';
          html += '<li class="currently">'+weather.currently+'</li>';
          html += '<li>'+weather.tempAlt+'&deg;C</li></ul>';

          jQuery("#weather").html(html);
        },
        error: function(error) {
          jQuery("#weather").html('<p>'+error+'</p>');
        }
     });

});
4

2 に答える 2

3

同様の問題がある場合は、次の形式で URL を渡します。

http://freegeoip.net/json/?callback=?  

代わりに:

http://freegeoip.net/json 

私のために働いた。

詳細はこちら: http://e-mats.org/2010/01/jquery-getjson-and-the-same-origin-policy/ およびここで$.getJson が IE で機能しない

私が解決策にたどり着くのを手伝ってくれたすべての人に感謝します。

于 2013-06-24T21:50:06.090 に答える