所以,我有这个 <div>
其中包含我的博客文章。它的类是.post
.我想做的是,每次有人点击小部件区域的最近帖子时,内容都是通过 Ajax 加载的,而不是刷新页面。
这是我的代码
jQuery(function()
{
jQuery(".umrp-list li a").click(function(){ //here I select the links of the widget
var post_url = jQuery(this).attr("href");
jQuery(".post").html('<div class="loading">Loading Content...</div>');
jQuery(".post").load(post_url);
return false;
});
});
所以我有两个问题
每当我点击“最近的帖子”链接时,内容都会加载到我想要加载的位置,但我的网页在点击后大约有 2 秒处于空闲/卡住状态。为什么会这样?
当我第一次点击时,除上面描述的细节外,一切正常。当我第二次单击(另一个链接或什至相同的链接)时,它没有加载我单击的帖子,而是将我的整个网页加载到
.post
上容器。知道为什么会这样吗?
最佳答案
听起来您正在同步发送请求。同步操作是阻塞的,而异步操作允许 UI 在操作在后台完成时继续运行。
至于第二个问题,听起来 jQuery(this) 以某种方式指向文档而不是元素的上下文。第二次检查您的“这个”值,它可能会为您提供一些见解。
关于javascript - 通过 Ajax 加载 Wordpress 帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16720324/