我有这个JS代码,用于在点击时显示每个动态加载的帖子:
function showPost(id) {
$.getJSON('http://hopeofgloryinternational.com/?json=get_post&post_id=' + id + '&callback=?', function(data) {
var output='';
output += '<h3>' + data.post.title + '</h3>';
output += data.post.content;
$('#mypost').html(output);
}); //get JSON Data for Stories
} //showPost
当我在我的手机或Windows浏览器上测试页面“http://howtodeployit.com/devotion/”时,点击了每日灵修信息,我在每个帖子之间导航,我注意到以前访问过的帖子仍显示为新帖子显示前几秒钟。
如何刷新页面或DOM,以便清除以前访问过的页面。
答案 0 :(得分:4)
单击项目或单击后退按钮时,只需empty()
myPost的内容。原因是您之前的内容仍然存在于mypost
div中,并且即使在执行ajax调用之前,您的内容页面也会变得可见,这可能需要一些时间来完成说700毫秒,因此您将看到旧的内容很长一段时间。
function showPost(id) {
var $myPost = $('#mypost').empty(); //emtpy it
$.getJSON('http://hopeofgloryinternational.com/?json=get_post&post_id=' + id + '&callback=?', function(data) {
var output='';
output += '<h3>' + data.post.title + '</h3>';
output += data.post.content;
$myPost.html(output);
}); //get JSON Data for Stories
答案 1 :(得分:2)
函数以行$('#mypost').html("");
开头。
此外,您可以在显示下一个请求的内容之前添加等待消息$('#mypost').html("Please wait...");
。
function showPost(id) {
$('#mypost').html(""); //add this line
//$('#mypost').html("Please wait..."); //also you can add it to show waiting message.
$.getJSON('http://hopeofgloryinternational.com/?json=get_post&post_id=' + id + '&callback=?', function(data) {
var output='';
output += '<h3>' + data.post.title + '</h3>';
output += data.post.content;
$('#mypost').html(output);
}); //get JSON Data for Stories
}
答案 2 :(得分:0)
你可以清空()$ mypost
var $myPost = $('#mypost').empty();