0

我在尝试使用 WordPress 和实时链接时遇到了一些麻烦。

让我解释 :

我在名为的类别中有此链接:

<a href="p?32" id="control">event 32</a>

事件 32 由以下代码管理:

  $.ajaxSetup({cache:false});


  $('#control').click(function(){
    var post_id = $(this).attr('href')

    $('#calendar').animate({top:'-99em'},400,
      function(){
        $(this).hide();
        $('#theEvent').fadeIn(400);
        $('#theEvent').html('<div class="loading"></div>');
        $('#theEvent').load(post_id);
      });
    return false;

  });

这很完美,这首单曲的内容如下所示:

这是single.php:

<div class="space"></div>
<div class="clearfix">

    <?php the_post(); ?>
    <div class="descritpion">
        <h2><?php the_title(); ?></h2>
        <span><?php the_author(); ?></span>
        <?php the_content(); ?>
        <div class="center">
     <a href=# id="prev">Prev</a>
     <a href=# id="next">Next</a>
   </div>
 </div>

 <div class="gallery" >
  <a href="/#fourth" id="close" class="close">X</a>

  <div id="slideShow">
    <?php the_gallery(); ?>

  </div>

该函数the_gallery()只是一个带有链接的图像循环:<a rel="fancybox"><img/></a>

编辑:06.09.12

图库功能与附件插件一起使用

function the_gallery() {

    $attachments = attachments_get_attachments();
    $total_attachments = count($attachments);

    if( $total_attachments > 0 )
    {
        for ($i=0; $i < $total_attachments; $i++)

        {
            $url =  wp_get_attachment_image( $attachments[$i]['id'],
                'bullet-event');
            $lrgurl = wp_get_attachment_image_src( $attachments[$i]['id'], 'large' );




            echo '

            <a href="'.$lrgurl[0].'"
            rel="#overlay" title="'.$attachments[$i]['title'].'">
            ' . $url . '
            </a> ';


        }
    }

}

单个 .php 中的 jquery 是:

var wrapEveryN = function(n, elements, wrapper) {
    for (var i=0; i< elements.length; i+=n) {
        elements.slice(i,i+n).wrapAll(wrapper);
    }
}

wrapEveryN( 12, $("#slideShow a"), '<div></div>' );

$('#slideShow').cycle({
    fx:     'scrollLeft'
});

问题来了,在单曲中我必须管理一个图片库(循环)一个fancybox和样式......唯一正确显示的是样式但我不知道为什么js不起作用:

我的所有代码和插件都在plugins.php&main.php

4

1 回答 1

0

我假设您的 js 代码处于就绪块中,因此不会执行 2 次。

试试这个例如:

$('#theEvent').load(post_id, function(){
  wrapEveryN( 12, $("#slideShow a"), '<div></div>' );

  $('#slideShow').cycle({
    fx: 'scrollLeft';
  });
});

PS:你应该只加载页面片段

于 2012-09-06T19:06:47.897 回答