因此,另一个 Razorjack Quicksand 用于 jQuery 跳跃式过渡 - jsfiddle 提供
And so another Razorjack Quicksand for jQuery jumpy transition - jsfiddle provided
使用流沙过滤时,所有图像都以跳跃开始,然后滑入到位。我在这里阅读了很多问答,但我没有设法摆脱这种跳跃。
在提供的 example/jsfiddle 中,错误可通过以下步骤重现:
- 调整 window 大小,以便包含 两个 图像。输出应显示 2x2 图像的网格。
- 按"All"过滤全部(尽管已经显示全部)
- 按"Hard"严格过滤。图像现在快速 "jump up" 滑入位置。
此处提供 jsfiddle:https://jsfiddle.net/2kgu8c80/19/
外部图书馆:
HTML:
<head>
<title>My Wooden Puzzles</title>
<script src="https://code.jquery.com/jquery-3.0.0.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
<script type="text/javascript" src="quicksand/quicksand.min.js">/script>
</head>
<body>
<ul id="pzl_filter">
<li id="filter_hard"><a href="javascript:filter('all');">All</a></li>
<li id="filter_hard"><a href="javascript:filter('hard');">Hard</a></li>
<li id="filter_easy"><a href="javascript:filter('easy');">Easy</a></li>
</ul>
<div id="outer-wrapper">
<ul id="pzl_thumbs" class="pzl_thumbs">
<li id="pzl_main_chess_snake" data-id="chess_snake" class="pzl_d_hard">
<img src="http://www.mywoodenpuzzles.com/data/chess_snake/main_thumb.jpg" class="img_thumbs">
<dl><br><dd>Chass Snake</dd></dl></li>
<li id="pzl_main_triforce_2" data-id="triforce_2" class="pzl_d_easy"><a href="javascript:select_puzzle('triforce_2', 'pieces');"><img src="http://www.mywoodenpuzzles.com/data/triforce_2/main_thumb.jpg" class="img_thumbs">
<dl><br><dd>Triforce 2</dd></dl></a></li>
<li id="pzl_main_three_pieces_cross" data-id="three_pieces_cross" class="pzl_d_hard">
<img src="http://www.mywoodenpuzzles.com/data/three_pieces_cross/main_thumb.jpg" class="img_thumbs">
<dl><br><dd>3 pieces cross</dd></dl></li>
<li id="pzl_main_centrifuge" data-id="centrifuge" class="pzl_d_easy">
<img src="http://www.mywoodenpuzzles.com/data/centrifuge/main_thumb.jpg" class="img_thumbs">
<dl><br><dd>Centrifuge</dd></dl></li>
</ul>
</div>
</body>
CSS
/* Layout & items */
#outer-wrapper {
margin: 5px 20px;
}
.pzl_thumbs li,
.img_thumbs {
background-color: transparent;
display: block;
max-height: 100%;
}
.img_thumbs {
height: 192px;
}
.pzl_thumbs li {
float: left;
height: 215px;
margin: 10px 10px 30px 10px;
}
.pzl_thumbs ul {
float: left;
}
.pzl_thumbs dd {
color: #666666;
font-size: 14px;
text-align: center;
}
JavaScript
var $list = jQuery("#pzl_thumbs");
var $data = $list.clone();
var $filteredData = null;
function filter(difficulty) {
var sel = ((difficulty!='all')? 'li.pzl_d_' + difficulty : 'li') ;
$filteredData = $data.find(sel);
$list.quicksand($filteredData, {
duration: 1800,
adjustHeight: false,
});
}
问题是 .pzl_thumbs li
的 max-height: 100%;
。
您需要删除它并让您的 li
元素根据其内容自由调整大小。
因此,修改为:
.pzl_thumbs li,
.img_thumbs {
background-color: transparent;
display: block;
max-height: 100%;
}
为此:
.pzl_thumbs li,
.img_thumbs {
background-color: transparent;
display: block;
}
如果 .img_thumbs
需要 max-height: 100%;
,请将其移到那里:
.img_thumbs {
height: 192px;
max-height: 100%;
}
使用流沙过滤时,所有图像都以跳跃开始,然后滑入到位。我在这里阅读了很多问答,但我没有设法摆脱这种跳跃。
在提供的 example/jsfiddle 中,错误可通过以下步骤重现:
- 调整 window 大小,以便包含 两个 图像。输出应显示 2x2 图像的网格。
- 按"All"过滤全部(尽管已经显示全部)
- 按"Hard"严格过滤。图像现在快速 "jump up" 滑入位置。
此处提供 jsfiddle:https://jsfiddle.net/2kgu8c80/19/
外部图书馆:
HTML:
<head>
<title>My Wooden Puzzles</title>
<script src="https://code.jquery.com/jquery-3.0.0.min.js" integrity="sha256-hVVnYaiADRTO2PzUGmuLJr8BLUSjGIZsDYGmIJLv2b8=" crossorigin="anonymous"></script>
<script type="text/javascript" src="quicksand/quicksand.min.js">/script>
</head>
<body>
<ul id="pzl_filter">
<li id="filter_hard"><a href="javascript:filter('all');">All</a></li>
<li id="filter_hard"><a href="javascript:filter('hard');">Hard</a></li>
<li id="filter_easy"><a href="javascript:filter('easy');">Easy</a></li>
</ul>
<div id="outer-wrapper">
<ul id="pzl_thumbs" class="pzl_thumbs">
<li id="pzl_main_chess_snake" data-id="chess_snake" class="pzl_d_hard">
<img src="http://www.mywoodenpuzzles.com/data/chess_snake/main_thumb.jpg" class="img_thumbs">
<dl><br><dd>Chass Snake</dd></dl></li>
<li id="pzl_main_triforce_2" data-id="triforce_2" class="pzl_d_easy"><a href="javascript:select_puzzle('triforce_2', 'pieces');"><img src="http://www.mywoodenpuzzles.com/data/triforce_2/main_thumb.jpg" class="img_thumbs">
<dl><br><dd>Triforce 2</dd></dl></a></li>
<li id="pzl_main_three_pieces_cross" data-id="three_pieces_cross" class="pzl_d_hard">
<img src="http://www.mywoodenpuzzles.com/data/three_pieces_cross/main_thumb.jpg" class="img_thumbs">
<dl><br><dd>3 pieces cross</dd></dl></li>
<li id="pzl_main_centrifuge" data-id="centrifuge" class="pzl_d_easy">
<img src="http://www.mywoodenpuzzles.com/data/centrifuge/main_thumb.jpg" class="img_thumbs">
<dl><br><dd>Centrifuge</dd></dl></li>
</ul>
</div>
</body>
CSS
/* Layout & items */
#outer-wrapper {
margin: 5px 20px;
}
.pzl_thumbs li,
.img_thumbs {
background-color: transparent;
display: block;
max-height: 100%;
}
.img_thumbs {
height: 192px;
}
.pzl_thumbs li {
float: left;
height: 215px;
margin: 10px 10px 30px 10px;
}
.pzl_thumbs ul {
float: left;
}
.pzl_thumbs dd {
color: #666666;
font-size: 14px;
text-align: center;
}
JavaScript
var $list = jQuery("#pzl_thumbs");
var $data = $list.clone();
var $filteredData = null;
function filter(difficulty) {
var sel = ((difficulty!='all')? 'li.pzl_d_' + difficulty : 'li') ;
$filteredData = $data.find(sel);
$list.quicksand($filteredData, {
duration: 1800,
adjustHeight: false,
});
}
问题是 .pzl_thumbs li
的 max-height: 100%;
。
您需要删除它并让您的 li
元素根据其内容自由调整大小。
因此,修改为:
.pzl_thumbs li,
.img_thumbs {
background-color: transparent;
display: block;
max-height: 100%;
}
为此:
.pzl_thumbs li,
.img_thumbs {
background-color: transparent;
display: block;
}
如果 .img_thumbs
需要 max-height: 100%;
,请将其移到那里:
.img_thumbs {
height: 192px;
max-height: 100%;
}