当前位置: 首页 > 编程笔记 >

Bootstrap轮播插件中图片变形的终极解决方案 使用jqthumb.js

雷锋
2023-03-14
本文向大家介绍Bootstrap轮播插件中图片变形的终极解决方案 使用jqthumb.js,包括了Bootstrap轮播插件中图片变形的终极解决方案 使用jqthumb.js的使用技巧和注意事项,需要的朋友参考一下

在顶求网的首页中我使用了BootStrap的轮播(carousel)插件来展示文章中的图片。我在程序中自动抓取文章的第一张图片作为该轮播控件中要显示的图片,由于文章的图片大小不一,而轮播插件的大小基本是固定的,所以展示的时候图片出现了变形。在网上找了很多中方式也没有解决(过程曲折,不再赘述),直到找到了这款Jquery的缩放插件——jqthumb.js.下面来看看如何使用它以及如何利用它来控制轮播控件中图片的大小,而且能够做到不变形,可以显示图片的主要部分(类似于微信朋友圈的图片混排效果——不知道大家有没有注意,在微信朋友圈中无论你发的图片的比率是什么,总能够被完美的排列,而不会发生变形)。首先我们看看Bootstrap的Carousel的html代码: 

<div id="carousel-example-generic" class="carousel slide" data-ride="carousel">
<!-- Wrapper for slides -->
 <div class="carousel-inner" role="listbox">
  <div class="item active">
  <a href="包含图片一文章路径">
   <img src="图片一路径" alt="图片一" onload="DrawImage(this)"/></a>
   <div class="carousel-caption">
    <h4 class="alpha">
     <a style="color:white;" href="包含图片一文章路径">图片一标题</a>
    </h4>
    </div>
  
  </div>
  <div class="item">
  <a href="包含图片二文章路径">
   <img src="图片二路径" alt="图片二" onload="DrawImage(this)"/>
  </a>
  <div class="carousel-caption">
    <h4 class="alpha">
     <a style="color:white;" href="包含图片二文章路径">图片二标题</a>
    </h4>
    </div>
  </div>
  <div class="item">
   <a href="包含图片三文章路径">
    <img src="图片三路径" alt="图片三" onload="DrawImage(this)"/>
   </a>
   <div class="carousel-caption">
    <h4 class="alpha">
     <a style="color:white;" href="包含图片三文章路径">图片三标题</a>
    </h4>
    </div>
  </div>
 </div>
 

由上述代码可以看到,每个图片(img)在加载(onload)的时候都调用了一个函数DrawImage,在这个函数中我们就可以调用jqthumb.js的方法来控制图片的大小了,注意该函数一定要加在上述HTML代码前,否则第一次加载的时候控制图片大小会失败(因为页面加载时序的原因),函数代码如下: 

<!--导入插件-->
<script type="text/javascript" src="/static/plugins/thumb/js/jqthumb.js"></script>
<script>
function DrawImage(hotimg)
{
 $(hotimg).jqthumb({
 classname  : 'jqthumb',
   width   : '100%',
   height   : '300px',
   position  : { y: '50%', x: '50%'},
   zoom   : '1',
   method   : 'auto',
 });
}
</script>

在该函数中我们调用了jqthumb方法来定义一个宽度和轮播插件相同高度为300px的原图片的缩略图,该缩略图是由图片的中心开始生成的(注意其position属性的设置),这样即使图片的大小变化了,也可以显示图片的主要内容,而且图片比率可以保持不变。 

来源:顶求网

如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:

Bootstrap学习教程

Bootstrap实战教程

Bootstrap插件使用教程

以上就是所有内容,希望能对大家有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍Bootstrap图片轮播组件使用实例解析,包括了Bootstrap图片轮播组件使用实例解析的使用技巧和注意事项,需要的朋友参考一下 使用Bootstrap来编写图片轮播组件Carousel,则能够节约很多时间,图片轮播组件是一个在网页中很常见的技术,但是如果直接编写的话,需要很长的JavaScript编码,同时也不好控制大小。  同时说一下,Carousel这个词的本义是回旋木马。

  • 本文向大家介绍Bootstrap 轮播(Carousel)插件,包括了Bootstrap 轮播(Carousel)插件的使用技巧和注意事项,需要的朋友参考一下 Bootstrap 轮播(Carousel)插件是一种灵活的响应式的向站点添加滑块的方式。除此之外,内容也是足够灵活的,可以是图像、内嵌框架、视频或者其他您想要放置的任何类型的内容。 如果您想要单独引用该插件的功能,那么您需要引用 caro

  • 本文向大家介绍全面解析Bootstrap中Carousel轮播的使用方法,包括了全面解析Bootstrap中Carousel轮播的使用方法的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家全面的解析了Bootstrap中Carousel的使用方法,供大家参考,具体内容如下 源码文件: Carousel.scss Carousel.js 实现原理: 隐藏所有要显示的元素,然后指定当前要显示的为

  • 求最好用的轮播js插件,主要是用于图片轮播,html块轮播

  • 本文向大家介绍全面解析多种Bootstrap图片轮播效果,包括了全面解析多种Bootstrap图片轮播效果的使用技巧和注意事项,需要的朋友参考一下 分享了三种Bootstrap图片轮播效果,相信总有一款你满意的! 第一种效果:Bootstrap简单轮播 第二种:带标题轮播(手动) 第三种:JS控制自动轮播 在 carousel() 方法中可以设置具体的参数,如: 使用时,在初始化插件的时候可以传关

  • 图片轮播继承自slide插件,因此其DOM结构、事件均和slide插件相同; DOM结构默认不支持循环播放,DOM结构如下: <div class="mui-slider"> <div class="mui-slider-group"> <div class="mui-slider-item"><a href="#"><img src="1.jpg" /></a></div>