Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 使用ajax创建调用后项目_Jquery_Ajax_Jquery Isotope_Jquery Masonry_Fullpage.js - Fatal编程技术网

Jquery 使用ajax创建调用后项目

Jquery 使用ajax创建调用后项目,jquery,ajax,jquery-isotope,jquery-masonry,fullpage.js,Jquery,Ajax,Jquery Isotope,Jquery Masonry,Fullpage.js,我在网站上工作,使用两个部分,我添加了一个链接,根据点击的画廊链接,使用ajax将画廊打开到第二部分,因此内容发生了变化。。我使用同位素进行图像布局,但问题是ajax调用后图像重叠,甚至我使用$container.同位素('layout') 单击时的调用方法如下所示 $('.slide').on('click','a',function(){ var url = "ajax.php"; var gid = $(this).data('id');

我在网站上工作,使用两个部分,我添加了一个链接,根据点击的画廊链接,使用ajax将画廊打开到第二部分,因此内容发生了变化。。我使用同位素进行图像布局,但问题是ajax调用后图像重叠,甚至我使用
$container.同位素('layout')

单击时的调用方法如下所示

$('.slide').on('click','a',function(){

        var url = "ajax.php";
        var gid = $(this).data('id');
            $.ajax({
                 type : 'post',
                 url : url,
                 data : {
                     galleryid: gid
                 },
                 success : function( response ) {

                   $('.ajax_content').html('<div class="content" id="gallery-container">'
                   +'<div class="isotope">'+response+'</div></div>');

                   var $container = $('.isotope');

                   $container.isotope({
                         itemSelector: '.item',
                         masonry: {
                             columnWidth: 160,
                             isFitWidth: true
                         }
                   });

                   setTimeout(function(){
                        $container.isotope( 'layout' );
                   },100);

                       $.fn.fullpage.moveTo(3,0);
                   },

                       error: function( message ){
                            console.log(message);
                       }
                    });
                    return false;
 });
$('.slide')。在('click','a',function()上{
var url=“ajax.php”;
var gid=$(this.data('id');
$.ajax({
键入:“post”,
url:url,
数据:{
加列利德:吉德
},
成功:功能(响应){
$('.ajax_content').html(''
+''+响应+'';
变量$container=$('.ISOTOX');
$container.com({
itemSelector:“.item”,
砌体:{
列宽:160,
isFitWidth:正确
}
});
setTimeout(函数(){
$container.同位素('layout');
},100);
$.fn.fullpage.moveTo(3,0);
},
错误:函数(消息){
控制台日志(消息);
}
});
返回false;
});
您需要使用,它允许在同位素点火之前加载所有图像。如果您使用的是同位素v2(imagesloaded未包括在v1.56中),请下载脚本并将其添加到您的页面,然后按如下方式调用同位素:

 var $container = $('.isotope');
 $container.imagesLoaded( function() {
  $container.isotope({
      itemSelector: '.item',
      masonry: {
        columnWidth: 160,
        isFitWidth: true
    }
      });
});
您需要使用,它允许在同位素激发之前加载所有图像。如果您使用的是同位素v2(imagesloaded未包括在v1.56中),请下载脚本并将其添加到您的页面,然后按如下方式调用同位素:

 var $container = $('.isotope');
 $container.imagesLoaded( function() {
  $container.isotope({
      itemSelector: '.item',
      masonry: {
        columnWidth: 160,
        isFitWidth: true
    }
      });
});

如果在加载图像时(单独)隐藏图像并逐步显示它们会怎么样

让我给你举个例子:

你的HTML应该是这样的

<div class="grid">
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
</div>
$('.grid').imagesLoadedMB().progress( function(instance, imageObj) {
    $(imageObj.img).fadeIn(300);
    $('.grid').isotope('layout');
});
现在你可以初始化同位素了

$('.grid').isotope({
    itemSelector: '.item',
    percentPosition: true,
});
最后,在imagesLoaded插件的帮助下,当图像加载到页面中时,会像这样显示图像

<div class="grid">
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
</div>
$('.grid').imagesLoadedMB().progress( function(instance, imageObj) {
    $(imageObj.img).fadeIn(300);
    $('.grid').isotope('layout');
});
  • 您可以在此处找到imagesLoaded插件:
  • 我个人也使用这个插件,它已经可以使用了(所以我不必担心类似的事情)

如果在加载图像时隐藏图像并逐步显示它们(单独显示),该怎么办

让我给你举个例子:

你的HTML应该是这样的

<div class="grid">
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
</div>
$('.grid').imagesLoadedMB().progress( function(instance, imageObj) {
    $(imageObj.img).fadeIn(300);
    $('.grid').isotope('layout');
});
现在你可以初始化同位素了

$('.grid').isotope({
    itemSelector: '.item',
    percentPosition: true,
});
最后,在imagesLoaded插件的帮助下,当图像加载到页面中时,会像这样显示图像

<div class="grid">
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
    <div class="item"> <img src="test.jpg"> </div>
</div>
$('.grid').imagesLoadedMB().progress( function(instance, imageObj) {
    $(imageObj.img).fadeIn(300);
    $('.grid').isotope('layout');
});
  • 您可以在此处找到imagesLoaded插件:
  • 我个人也使用这个插件,它已经可以使用了(所以我不必担心类似的事情)