Jquery显示div形成另一页

时间:2011-12-29 11:16:58

标签: jquery load

我有这个问题,我觉得有点难以解释,但我会尝试:

我有一个页面,在点击事件中使用divs函数从其他页面中取出一些load()。其中一个divs包含使用Jquery.Cycle显示的精选图片。虽然在页面本身上jquery.Cycle可以正常工作,但在导入页面时却没有。希望我的解释清楚。

导入代码是:

$('#wrapper a').live("click", function(evt) {

    evt.preventDefault();

    var url = $(this).attr('href');
    var oldDiv = $('#wrapper-content');
    var newDiv = $('#wrapper-content1').load(url + ' #wrapper-content');
    newDiv.hide();
    $('#wrapper-mid-in-right').prepend(newDiv);
    newDiv.fadeIn(1000);
    oldDiv.fadeOut(1000,function() {

    $(this).remove();
    });

});

如上所述,循环效果在页面上正常工作。请帮我。 F。

$('#gallery').cycle({
fx: 'scrollRight',
timeout: 100000,
speed: 500,
delay: -2000,
pager: '#pager'

});

3 个答案:

答案 0 :(得分:0)

尝试更改如下,我希望它会对您有所帮助。我已经写了关于代码

旁边的更改的评论
function cycleFunction(){
 // implement cycle functionality here
}

$(document).ready(function(){
   cycleFunction(); // calling function for 1st time

   $('#wrapper a').on("click", function(evt) {    
    evt.preventDefault();

    var url = $(this).attr('href');
    var oldDiv = $('#wrapper-content');
    var newDiv = $('<div>').attr('id','wrapper-content1'); // create the div with id
    $('#wrapper-mid-in-right').prepend(newDiv); include in the existing div
    $('#wrapper-content1').load(url + ' #wrapper-content', function(){
      cycleFunction(); // calling function everytime div load
    }); // load the new div
  });    
});

答案 1 :(得分:0)

我相信您的问题与您发布的代码块无关。由于以下几点,插件在页面本身中起作用:

  1. 已加载Cycle插件
  2. 标记已存在
  3. 插件已正确启动($(document).ready()等)
  4. 将此内容动态加载到页面时,这些事实都不一定正确。

    1. 此页面中是否加载了Cycle插件?
    2. 您必须在导入新标记后启动Cycle插件。
    3. 父页面中的JS(加载Cycle内容的页面)应该大致类似于:

      $('#wrapper-content1').load(url + ' #wrapper-content', function() {
          $('#gallery').cycle({
              fx: 'scrollRight',
              timeout: 100000,
              speed: 500,
              delay: -2000,
              pager: '#pager'
          });
      });
      

答案 2 :(得分:0)

试试这个

$('#wrapper a').live("click", function(evt) {

    evt.preventDefault();

    var url = $(this).attr('href');
    var oldDiv = $('#wrapper-content');
    var newDiv = $('#wrapper-content1').load(url + ' #wrapper-content');
    newDiv.hide();
    $('#wrapper-mid-in-right').prepend(newDiv);
    newDiv.fadeIn(1000);
    oldDiv.fadeOut(1000,function() {

    $(this).remove();
    });


    $('#gallery').cycle({
        fx: 'scrollRight',
        timeout: 100000,
        speed: 500,
        delay: -2000,
        pager: '#pager'

     });

});