Owl 旋转木马在第一道菜时中断
Owl Carousel breaks on first coursel
我在 RefineryCMS 项目中使用 Owl Carousel。我在同一页面上有多个 Owl 轮播,我通过单击一种类型在它们之间切换。然后它显示了与该类型相关的许多书籍。它加载显示所有书籍,但是当我在一个类型之间单击并返回到第一个类型时,第一个旋转木马然后修改宽度,以便书籍 运行 离开一边。
示例:当我加载时它是正确的
当我点击 'All' 应该显示相同的输出时,我得到以下信息
点击 'All' 只会隐藏所有其他流派并显示 'All' 流派,这是相关代码;
$(function() {
$(".genre_link").each(function(){
$(this).click(function(){
var genre = this.getAttribute('data-genre'); // Get the genre we are talking about
$(".backlists").hide(0, function(){ // First hide all
$("#" + genre).show(); // Show the one genre after all have been hidden.
});
})
})
})
这是我 运行 加载时的代码。
$(".owl-carousel").owlCarousel(
{
items: 5,
itemsDesktop : [500,3],
itemsDesktopSmall : [400,3]
}
);
这是旋转木马
<div id="genres">
<div class="form-style-2-heading"></div>
<!-- Genre links -->
<% @all_genres.each do |genre| %>
<%= link_to genre[:name], "#/#{genre[:name]}", class: "genre_link", data: {genre: genre[:name]} %>
<% end %>
<!-- Books per genre -->
<% @all_genres.each do |genre| %>
<div id="<%= genre[:name] %>" class="backlists">
<div class="owl-carousel">
<% genre[:backlists].each do |backlist| %>
<div>
<li>
<%= image_fu(backlist.picture, "120x160#") %>
<br />
<div class="product_title">
<%=raw backlist.title %>
</div>
<div class="product_author">
<%=raw backlist.author %>
</div>
</li>
</div>
<% end %>
</div>
</div>
<% end %>
</div>
如果我将空白作为数组中的第一个,那么问题就解决了。这是一个非常 hacky 的解决方案,然后会导致菜单中出现空白的其他问题。
刚找到问题中没有的答案
我将第一个后备列表 ('All') 设置为内联,而我本应使用 block
来自
$(".backlists").first().css("display", "inline")
至
$(".backlists").first().css("display", "block")
我在 RefineryCMS 项目中使用 Owl Carousel。我在同一页面上有多个 Owl 轮播,我通过单击一种类型在它们之间切换。然后它显示了与该类型相关的许多书籍。它加载显示所有书籍,但是当我在一个类型之间单击并返回到第一个类型时,第一个旋转木马然后修改宽度,以便书籍 运行 离开一边。
示例:当我加载时它是正确的
当我点击 'All' 应该显示相同的输出时,我得到以下信息
点击 'All' 只会隐藏所有其他流派并显示 'All' 流派,这是相关代码;
$(function() {
$(".genre_link").each(function(){
$(this).click(function(){
var genre = this.getAttribute('data-genre'); // Get the genre we are talking about
$(".backlists").hide(0, function(){ // First hide all
$("#" + genre).show(); // Show the one genre after all have been hidden.
});
})
})
})
这是我 运行 加载时的代码。
$(".owl-carousel").owlCarousel(
{
items: 5,
itemsDesktop : [500,3],
itemsDesktopSmall : [400,3]
}
);
这是旋转木马
<div id="genres">
<div class="form-style-2-heading"></div>
<!-- Genre links -->
<% @all_genres.each do |genre| %>
<%= link_to genre[:name], "#/#{genre[:name]}", class: "genre_link", data: {genre: genre[:name]} %>
<% end %>
<!-- Books per genre -->
<% @all_genres.each do |genre| %>
<div id="<%= genre[:name] %>" class="backlists">
<div class="owl-carousel">
<% genre[:backlists].each do |backlist| %>
<div>
<li>
<%= image_fu(backlist.picture, "120x160#") %>
<br />
<div class="product_title">
<%=raw backlist.title %>
</div>
<div class="product_author">
<%=raw backlist.author %>
</div>
</li>
</div>
<% end %>
</div>
</div>
<% end %>
</div>
如果我将空白作为数组中的第一个,那么问题就解决了。这是一个非常 hacky 的解决方案,然后会导致菜单中出现空白的其他问题。
刚找到问题中没有的答案
我将第一个后备列表 ('All') 设置为内联,而我本应使用 block
来自
$(".backlists").first().css("display", "inline")
至
$(".backlists").first().css("display", "block")