无法制作一些瓷砖' freewall jquery中的static static

时间:2014-04-30 17:22:28

标签: jquery plugins

我遇到了这个非常棒的jquery插件,名为freewall(http://vnjs.net/www/project/freewall/),尽管它非常棒,但还是运行了一个糟糕的文档(至少从我的jquery-noob的角度来看)。

所以这是我的问题:我有这个简单的页面,有6-7个div,freewall按照规则排列。问题是我想让瓷砖的尺寸保持不变,因为当我调整浏览器窗口大小时它们会改变。我想要这个的原因是我最终会在这些瓷砖上放置一些图像和文字,然后以随机的方式调整它们的大小就可以了。但/ / p>

我尝试使用fix-size并以他们网站上描述的各种方式,但没有成功。我也不是很擅长jquery(我实际上在2天前拿起了js和jquery),所以请原谅我,如果我的问题是愚蠢的。

你能否给我一个简短的答案(如果你弄清楚fixSize有什么问题)?

这是我的代码: HTML:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="js/freewall.js"></script>
<script src="js/body.js"></script>
<style type="text/css">
    #container{
        width: 70%;
        margin: auto;   
    }

    .tile{
        background: black;
        width: 320px;
        height: 320px;
    }

</style>
</head>

<body>
    <div id="container">
        <div class="tile" id="1"></div>
        <div class="tile" id="2"></div>
        <div class="tile" id="3"></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
        <div class="tile" id=""></div>
    </div>

</body>
</html>

jquery的:

$(function(){
var wall = new freewall("#container");
wall.fitWidth(1140);

var fixd1 = $("#1");
var fixd2 = $("#2");
var fixd3 = $("#3");

wall.fixSize({
    block: fixd1,
    width: 150,
    height: 150
});

wall.reset({
    selector: '.tile',
    cellW: 300,
    cellH: 300,
    animate: true,
    gutterX: 12,
    gutterY: 12,
    onResize: function(){
        this.fitWidth();
        }
    });
 });

1 个答案:

答案 0 :(得分:2)

如果没有在wall.reset({});中实现它,那fixSize就无法工作。这样说:

wall.reset({
  fixSize:1;
  // other options...
});

根据Freewall的选项文档:

fixSize:boolean

默认值:null

值为null或未设置允许块可以调整和调整大小以填补空白

值为0或false让块可以调整大小,但无法调整大小以填补空白。

值为1或者true让块将大小保持为init,无法调整大小以填补空白。

可以通过在块中设置data-fixSize属性来覆盖fixSize选项。

有两个fixSize:一个是方法,而另一个是选项。如果前者没有定义,第一个将不起作用。