我想實現一個非常簡單的程序,但不能完成,因爲我的技能和知識。 我得到了什麼=>我從服務器檢索json feed,它工作正常。做sessionStorage的Ajax Json飼料
我需要做什麼=>儘快的JSON提要檢索其添加到sessionStorage的,所以當我將復出此頁面再次數據(在同一會話中)應該被從sessionStorage的,而不是從服務器提取通過Ajax。希望它確實有道理。
代碼:
$(document).ready(function() {
if (window.sessionStorage.getItem("weather") === null) {
$.ajax({
url: 'http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20weather.forecast%20where%20woeid%3D24553463%20and%20u%20%3D%20"c"&format=json&diagnostics=true',
async: false,
callback: 'callback',
crossDomain: true,
contentType: 'application/json; charset=utf-8',
type: 'POST',
dataType: 'jsonp',
timeout: 5000,
success: function (data, status) {
if (data !== undefined && data.query.results.channel !== undefined) {
$('#weather').append('<div class="wcode">' + data.query.results.channel.item.condition.code + '</div><div class="temperature">' + data.query.results.channel.item.condition.temp + '°C</div><div class="details">' + data.query.results.channel.wind.speed + '/с<br/>' + data.query.results.channel.atmosphere.pressure + '<br/>' + data.query.results.channel.atmosphere.humidity + '% humid.</div>');
}
var output = $('#weather');
window.sessionStorage.setItem("weather", JSON.stringify(output));
}
});
} else {
var jsData = window.sessionStorage.getItem("weather", JSON.stringify(output));
}
});
小提琴是在這裏:http://jsfiddle.net/j8QGv/
撥弄請做修改,以便其他用戶可以使用該代碼作爲例子。
非常感謝您的幫助...
你真的想要的數據對象或只是HTML? – 2013-03-14 22:03:22
我想整個html塊。 – qqruza 2013-03-14 22:07:43
對於sessionStorage來說,它不會是一個大量的數據存儲。 – qqruza 2013-03-14 22:08:24