Jquery 使用ajax创建调用后项目
我在网站上工作,使用两个部分,我添加了一个链接,根据点击的画廊链接,使用ajax将画廊打开到第二部分,因此内容发生了变化。。我使用同位素进行图像布局,但问题是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');
$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插件:
- 我个人也使用这个插件,它已经可以使用了(所以我不必担心类似的事情)