我正在使用masonary jquery插件来格式化通过ajax加载到我页面的图像。
除了通过ajax加载图像之外,它们都完美地工作,它们似乎从不知名的地方获得额外的边距/填充值,并且不像页面上已有的图像那样无缝地适应。我尝试添加margin:0; padding:0;
但似乎没有任何效果
我的所有代码目前都在这里: http://1hype.me/
非常感谢任何想法!
修改
我测试过的所有内容都出现了问题,Safari,Chrome& FF(mac)
这是一个屏幕截图,可以解释一下:http://cl.ly/0d0q37290W1r0j0X2g0c
答案 0 :(得分:2)
这是由于空白。
你可以从ajax调用返回图像(没有任何脚本)
然后运行
function fetch() {
//autoupdater
$.ajax({
type: "POST",
url: "ajax/fetch_image.php",
cache: false,
data: "after=000000",
success: function(results){
var imgHolder = $('#image_holder');
/* prepend the results
results is just the image (without whitespace around it) */
imgHolder.prepend(results);
/* fade in the first image (the one we just prepended)*/
imgHolder.find('img:first').fadeIn(1100);
/* do the masonry thing.. */
imgHolder.masonry({ singleMode: true });
}
});
}
如果这不是一个选项(改变fetch_image.php ),那么你可以使用
function fetch() {
//autoupdater
$.ajax({
type: "POST",
url: "ajax/fetch_image.php",
cache: false,
data: "after=000000",
success: function(results){
var imgHolder = $('#image_holder');
/* exclude text whitespace nodes (not included in a tag).*/
var $results = $(results).filter(function(){return this.nodeType != 3});
imgHolder.prepend( $results.eq(0) );
$('body').append( $results.eq(1) );
}
});
}