来自PHP的Jquery取代了DIV内容

时间:2012-12-18 12:14:47

标签: jquery html replace

在页面I中,在摘录结尾处有“阅读更多”的摘录帖子,因此我尝试用点击“阅读更多”来替换包含摘录的div的内容和完整的帖子。点击“阅读更多”时点击事件没有任何反应。 这是我的function.php中代码的和平

 if ($show_more_tag) {
        $excerpt = $excerpt.' <a class="more-link" href="'.$perma_link.'">'.$more_tag.'</a>';
        /* JQuery Start*/
                   echo '<script type="text/javascript">
                     $(".more-link").click(function(event) {
                    $(this).parent("div").load($(this).attr("href")); //load the data
                    event.preventDefault(); // prevent the browser from following the link
                      });
                    </script>';
        /* JQuery End */
    }

哪里出错?请帮助这是我第一次尝试为网络制作东西。

感谢你们所有人!这是适合我的代码:

<script type="text/javascript">
    $(document).ready(function() 
    {
        $('.more-link').click(function(event) 
        {
            event.preventDefault();
            $(this).parents('div:eq(0)').load($(this).attr('href') + ' #container', function()
            {
                $('#container .PicturePlaceHolder a').each(function(index, el) 
                    {
                    $(el).addClass('fancybox');
                    });
                    $('#container .fancybox').fancybox(
                    {
                    'transitionIn' : 'elastic', 
                    'transitionOut' : 'elastic',
                    'centerOnScroll': 'true',
                    'cyclic' : 'true'
                    });
            });
        });
    });
</script>

1 个答案:

答案 0 :(得分:0)

您正在输出实际内容之前的脚本。因此,$('。more-link')选择器与任何东西都不匹配。将JS代码包装在document.ready回调:

 /* JQuery Start*/
 echo '<script type="text/javascript">
 $(function(){
   $(".more-link").click(function(event) {
     $(this).parent("div").load($(this).attr("href")); //load the data
     event.preventDefault(); // prevent the browser from following the link
   });
});
</script>';
/* JQuery End */