jQuery抓取标题导致空内容

时间:2011-04-20 15:02:14

标签: jquery wordpress

我知道这听起来很奇怪。但我正在使用带有WordPress网站的jQuery Cycle插件将自定义帖子类型作为带有内容的横幅图片。对于分页,我希望帖子标题是链接文本,而不是标准的“1 2 3 4 ...”等。

我设法弄明白该怎么做 - 但现在我有一个有趣的新问题。 当我拉出帖子标题并将其弹出到分页链接时,我的帖子内容消失了。似乎jQuery正在抓取它发现的内容,将其删除,并在链接按钮中弹出它正在寻找的项目。这很奇怪。

无论如何,有人会知道如何解决这个问题吗?这是我的jQuery代码:

jQuery(document).ready(function ($) {
            $('#slideshow div.slide:first').fadeIn(1000, function() {
                $('#slideshow').after('<div id="pagination"><div id="page_inner"><ul>').cycle({
                    fx: 'scrollHorz',
                    speed: 500,
                    timeout: 0,
                    pager: '#pagination #page_inner ul',
                    pagerAnchorBuilder: function(idx, slide) { 
                        $('.slide_caption', slide).children('h3');
                        //alert($(slide).text());
                        return '<li><a href="#">' + $(slide).text() + '</a></li>';
                    }
                });
            });
        });

基本上,我希望jQuery查看slide_caption div,找到第一个<h3>标记并复制该文本并将其弹出以获取链接按钮文本。它发现它是并使用上面的代码完成它 - 但它也会在执行此操作时删除slide_content div中的所有内容。现在它将帖子的整个内容拉入按钮,而不只是<h3>标记。

任何帮助将不胜感激!谢谢:))

1 个答案:

答案 0 :(得分:0)

看起来你并没有抓住H3的text()而是从幻灯片中拉出整个text()

pagerAnchorBuilder: function(idx, slide) { 
    return '<li><a href="#">' + $(slide).find('.slide_caption h3').text() + '</a></li>';
}

pagerAnchorBuilder: function(idx, slide) { 
    $('.slide_caption', slide).children('h3'); // You're not doing anything with this
    //alert($(slide).text());
    // $(slide).text() => complete text from your slide parameter
    return '<li><a href="#">' + $(slide).text() + '</a></li>';
}