我正在研究 wordpress cms。我有包含所选帖子的页面模板(它通过插件工作)。现在每个选定的帖子都有一个删除帖子按钮。如果有人点击删除发布按钮,我想显示一个加载 gif,以便该人知道删除过程正在进行(自然不是每个人都精通技术)。所以我搜索了一个解决方案并使用了这段 javascript。
<script type="text/javascript">
jQuery(document).ready(function($) {
jQuery('#page-load')
.hide() // hide it initially
.ajaxStart(function() {
jQuery(this).show("fast");
})
.ajaxStop(function() {
jQuery(this).hide();
});
});
</script>
连同这段 HTML。它一起完成了这项工作。
<div id="page-load"><img src="http://awesomesite.com/images/loader.gif" /></div>
ISSUE : 问题是,在单击 remove-post 链接时,加载 gif 显示的时间很晚,几乎是在重新加载页面时。我希望完成的是加载 gif 应该立即出现在单击删除发布按钮时,然后在重新加载完成后隐藏(一旦单击的帖子被删除)。
我没有 ajax 代码,我只是使用 wp 插件。不知何故,这奏效了,所以片段就在那里。我可能做错了。因此,如果您能提出解决方案,那就太好了
如果您发现它相关,这里是生成删除链接的插件的一部分。
function wpfp_remove_favorite_link($post_id) {
if (wpfp_is_user_can_edit()) {
$wpfp_options = wpfp_get_options();
$class = 'wpfp-link remove-parent';
$link = "<a id='rem_$post_id' class='$class' href='?wpfpaction=remove&page=1&postid=". $post_id ."' title='".wpfp_get_option('rem')."' rel='nofollow'>".wpfp_get_option('rem')."</a>";
$link = apply_filters( 'wpfp_remove_favorite_link', $link );
echo $link;
}
}
BOTTOMLINE:我使用这个解决方案总比没有好。我只在 SO 的某个地方找到了这些片段。正如我之前所说,我的方法可能完全错误。一天结束时,我需要的是,当有人单击删除链接时,页面应立即显示加载 gif,然后在重新加载完成时隐藏。请帮助我找到更好的解决方案。提前谢谢了。