这是一个WordPress网站,我有一个模板,可以在此网址http://www.example.com/articles
的列表中呈现所有帖子。当用户点击帖子标题时,它会使用相同的模板加载帖子的内容,但使用不同的网址http://www.example.com/articles/?article_id=298
。我无法弄清楚的是如何在页面加载帖子内容后显示提醒。我已尝试setTimeout
,$(document).ready
,$(window).load
,window.onload=funtion()
,现在$(document).on("pagecontainerload",function()
。
的JQuery / JavaScript的
$('a.open-alert').click(function() {
$(document).on("pagecontainerload",function(){
window.alert('hey');
});
});
HTML
<?php
$tearsheet = get_query_var('article_id');
if($tearsheet != '') {
echo 'there is something here';
} else {
$args = array(
'post_type' => 'post',
'posts_per_page' => -1,
);
$query = new WP_Query( $args );
if($query->have_posts()) :
while($query->have_posts()) :
$query->the_post();
?>
<div>
<?php $id = get_the_ID(); ?>
<?php $title = get_the_title(); ?>
<a class="open-alert" href="<?php bloginfo('url'); echo '/find-articles/?article_id='.$id; ?>"><?php echo $title; ?></a>
</div>
<?php
endwhile;
endif;
}
?>
答案 0 :(得分:2)
永远不会执行click
处理程序,因为页面会卸载并加载新页面 - 链接<a class="open-alert" href="<?php bloginfo...
中的页面。您可能在onclick处理程序中有return false
,但这意味着,链接将不会被执行。
为了动态执行此操作,请考虑仅重新加载该页面中的容器,其中包含一些Ajax功能的post文本。