1

我在我的网站上设置了一个标签,我想在每个标签的内容上使用 Masonry,但我一次只能在一个标签上工作。

最初我尝试只使用通用选择器并在每个选项卡中使用它。但是,这仅在第一个选项卡中起作用。然后我尝试添加更多容器变量:

<!--Masonry kit-->
<script type="text/javascript" src="http://localhost/LazyDuck/masonry-site/js/jquery.masonry.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(window).load(function() {

var $container = $('#container');
var $container = $('#dining');
var $container = $('#events');
var $container = $('#climbing');
var $container = $('#wildlife');
var $container = $('#shopping');
var $container = $('#kids');
var $container = $('#sport');


$container.masonry({
  itemSelector: '.item',
  gutterWidth : 10,
  isAnimated: !Modernizr.csstransitions
});
});});

但这也行不通。我确信这是一件简单的事情,但我的 JavaScript 编码并不是那么好。以上是我猜的。:(

4

1 回答 1

0

我认为这更多的是 jQUery 语法,但我认为如果没有可见内容,砌体将无法工作。它必须应用于可见的 div。

所以一种方法是在它可见的时候做这一切然后隐藏它..不太好..我知道。

var $container = $('#container');
var $container = $('#dining');
var $container = $('#events');
var $container = $('#climbing');
var $container = $('#wildlife');

要解决启动插件的链接问题,只需执行此操作

$('#wildlife, #climbing , ... ,#container).masonry({ ..

但在这种情况下,通过唯一的类名来切换它会更容易,例如

class="MasoniseThis otherClasses"
...
$('.MasoniseThis').masonry({ ..

并且在每个页面加载时,它都应该将插件应用到任何带有该类的可见 div。

如果没有 JSFiddle 中的一些标记示例,我们将无法真正帮助您。

于 2012-07-12T10:23:41.480 回答