Ruby on Rails:重新归档 Gem 和 Owl Carousel jQuery 插件,组合不好?页面加载时图像大小的问题
Ruby on Rails: Refile Gem and Owl Carousel jQuery plugin, bad combination? Issues with image size on page load
我让这两个工作正常,但在执行时遇到了问题。我假设其中一个加载速度比另一个快...
<div class="owl-carousel">
<% @project.project_images.each do |image| %>
<div class="bi-item">
<%= attachment_image_tag(image, :file, :fit, 1000, 430) %>
</div>
<% end %>
</div>
所以我在 owl-carousel
标记中得到了这个循环...当页面加载时,图像非常小(见第一张附加图像)...如果我拖动浏览器大小,图像开始变得有响应,大小开始改变。最终图像将达到正确的大小......我不确定问题是什么,或者我需要做什么才能让它一起工作。我的假设正确吗?如果是这样,我如何让它一起加载?
我的咖啡脚本
$(document).on 'ready page:load', ->
$(".owl-carousel").owlCarousel
loop: true
autoWidth: true
lazyLoad : true
这是一张截图,你可以看到左侧,它很小
然后,当我将浏览器拖动得更小时,图像会调整大小,变大
然后把浏览器调大一点,就正常了
好的,我想我明白了...
我把owl轮播功能放在window.load下...这暂时解决了这个问题。如果其他人有其他解决方案,或者更好的解决方案,我仍然想知道!
$(window).load ->
$(".owl-carousel").owlCarousel
loop: true
autoWidth: true
lazyLoad : true
谢谢
我遇到了类似的问题,这对我有帮助:
// set owl-carousel width equals to owl-wrapper width (solves width issue on load)
function owlWrapperWidth( selector ) {
$(selector).each(function(){
$(this).find('.owl-carousel').outerWidth( $(this).closest( selector ).innerWidth() );
});
}
// trigger on start and resize (solves width issue on load)
owlWrapperWidth( '.owl-wrapper' );
$( window ).resize(function() {
owlWrapperWidth( $('.owl-wrapper') );
});
$(document).ready(function(){
// triggers owl Carousel
$('.owl-carousel').owlCarousel({
stagePadding: 0,
items: 1,
itemsDesktop:[1000,1],
itemsDesktopSmall:[979,1],
itemsTablet:[768,1],
pagination: true,
dots: true,
autoplay: 3000,
loop: true
});
});
我让这两个工作正常,但在执行时遇到了问题。我假设其中一个加载速度比另一个快...
<div class="owl-carousel">
<% @project.project_images.each do |image| %>
<div class="bi-item">
<%= attachment_image_tag(image, :file, :fit, 1000, 430) %>
</div>
<% end %>
</div>
所以我在 owl-carousel
标记中得到了这个循环...当页面加载时,图像非常小(见第一张附加图像)...如果我拖动浏览器大小,图像开始变得有响应,大小开始改变。最终图像将达到正确的大小......我不确定问题是什么,或者我需要做什么才能让它一起工作。我的假设正确吗?如果是这样,我如何让它一起加载?
我的咖啡脚本
$(document).on 'ready page:load', ->
$(".owl-carousel").owlCarousel
loop: true
autoWidth: true
lazyLoad : true
这是一张截图,你可以看到左侧,它很小
然后,当我将浏览器拖动得更小时,图像会调整大小,变大
然后把浏览器调大一点,就正常了
好的,我想我明白了...
我把owl轮播功能放在window.load下...这暂时解决了这个问题。如果其他人有其他解决方案,或者更好的解决方案,我仍然想知道!
$(window).load ->
$(".owl-carousel").owlCarousel
loop: true
autoWidth: true
lazyLoad : true
谢谢
我遇到了类似的问题,这对我有帮助:
// set owl-carousel width equals to owl-wrapper width (solves width issue on load)
function owlWrapperWidth( selector ) {
$(selector).each(function(){
$(this).find('.owl-carousel').outerWidth( $(this).closest( selector ).innerWidth() );
});
}
// trigger on start and resize (solves width issue on load)
owlWrapperWidth( '.owl-wrapper' );
$( window ).resize(function() {
owlWrapperWidth( $('.owl-wrapper') );
});
$(document).ready(function(){
// triggers owl Carousel
$('.owl-carousel').owlCarousel({
stagePadding: 0,
items: 1,
itemsDesktop:[1000,1],
itemsDesktopSmall:[979,1],
itemsTablet:[768,1],
pagination: true,
dots: true,
autoplay: 3000,
loop: true
});
});