簡體   English   中英

jssor Gallery縮略圖懸停交換

[英]jssor Gallery thumbnail image hover swap

我正在嘗試構建一個jssor圖像庫,並使大多數功能正常工作,但是我對jssor並不十分精通,因此,如果這只是簡單的補充,請道歉。

我有黑白縮略圖用於導航,並且當圖像處於活動狀態或懸停在縮略圖上方時顯示在靜態圖像上時,我想將縮略圖懸停或活動在彩色版本上進行圖像交換,但我不確定如何完成。

資料來源: Jssor垂直縮略圖

t01.png是當前覆蓋的圖像

  <!-- it works the same with all jquery version from 1.x to 2.x --> <script type="text/javascript" src="../../_Assets/scripts/js/jquery-1.9.1.min.js"></script> <!-- use jssor.slider.mini.js (40KB) instead for release --> <!-- jssor.slider.mini.js = (jssor.js + jssor.slider.js) --> <script type="text/javascript" src="../../_Assets/scripts/js/jssor.js"></script> <script type="text/javascript" src="../../_Assets/scripts/js/jssor.slider.js"></script> <script> jQuery(document).ready(function ($) { var _SlideshowTransitions = [ //Zoom- in {$Duration: 1200, $Zoom: 1, $Easing: { $Zoom: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseOutQuad }, $Opacity: 2 }, //Zoom+ out {$Duration: 1000, $Zoom: 11, $SlideOut: true, $Easing: { $Zoom: $JssorEasing$.$EaseInExpo, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }, //Rotate Zoom- in {$Duration: 1200, $Zoom: 1, $Rotate: 1, $During: { $Zoom: [0.2, 0.8], $Rotate: [0.2, 0.8] }, $Easing: { $Zoom: $JssorEasing$.$EaseSwing, $Opacity: $JssorEasing$.$EaseLinear, $Rotate: $JssorEasing$.$EaseSwing }, $Opacity: 2, $Round: { $Rotate: 0.5} }, //Rotate Zoom+ out {$Duration: 1000, $Zoom: 11, $Rotate: 1, $SlideOut: true, $Easing: { $Zoom: $JssorEasing$.$EaseInExpo, $Opacity: $JssorEasing$.$EaseLinear, $Rotate: $JssorEasing$.$EaseInExpo }, $Opacity: 2, $Round: { $Rotate: 0.8} }, //Zoom HDouble- in {$Duration: 1200, x: 0.5, $Cols: 2, $Zoom: 1, $Assembly: 2049, $ChessMode: { $Column: 15 }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Zoom: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }, //Zoom HDouble+ out {$Duration: 1200, x: 4, $Cols: 2, $Zoom: 11, $SlideOut: true, $Assembly: 2049, $ChessMode: { $Column: 15 }, $Easing: { $Left: $JssorEasing$.$EaseInExpo, $Zoom: $JssorEasing$.$EaseInExpo, $Opacity: $JssorEasing$.$EaseLinear }, $Opacity: 2 }, //Rotate Zoom- in L {$Duration: 1200, x: 0.6, $Zoom: 1, $Rotate: 1, $During: { $Left: [0.2, 0.8], $Zoom: [0.2, 0.8], $Rotate: [0.2, 0.8] }, $Easing: { $Left: $JssorEasing$.$EaseSwing, $Zoom: $JssorEasing$.$EaseSwing, $Opacity: $JssorEasing$.$EaseLinear, $Rotate: $JssorEasing$.$EaseSwing }, $Opacity: 2, $Round: { $Rotate: 0.5} }, //Rotate Zoom+ out R {$Duration: 1000, x: -4, $Zoom: 11, $Rotate: 1, $SlideOut: true, $Easing: { $Left: $JssorEasing$.$EaseInExpo, $Zoom: $JssorEasing$.$EaseInExpo, $Opacity: $JssorEasing$.$EaseLinear, $Rotate: $JssorEasing$.$EaseInExpo }, $Opacity: 2, $Round: { $Rotate: 0.8} }, //Rotate Zoom- in R {$Duration: 1200, x: -0.6, $Zoom: 1, $Rotate: 1, $During: { $Left: [0.2, 0.8], $Zoom: [0.2, 0.8], $Rotate: [0.2, 0.8] }, $Easing: { $Left: $JssorEasing$.$EaseSwing, $Zoom: $JssorEasing$.$EaseSwing, $Opacity: $JssorEasing$.$EaseLinear, $Rotate: $JssorEasing$.$EaseSwing }, $Opacity: 2, $Round: { $Rotate: 0.5} }, //Rotate Zoom+ out L {$Duration: 1000, x: 4, $Zoom: 11, $Rotate: 1, $SlideOut: true, $Easing: { $Left: $JssorEasing$.$EaseInExpo, $Zoom: $JssorEasing$.$EaseInExpo, $Opacity: $JssorEasing$.$EaseLinear, $Rotate: $JssorEasing$.$EaseInExpo }, $Opacity: 2, $Round: { $Rotate: 0.8} }, //Rotate HDouble- in {$Duration: 1200, x: 0.5, y: 0.3, $Cols: 2, $Zoom: 1, $Rotate: 1, $Assembly: 2049, $ChessMode: { $Column: 15 }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Top: $JssorEasing$.$EaseInCubic, $Zoom: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseOutQuad, $Rotate: $JssorEasing$.$EaseInCubic }, $Opacity: 2, $Round: { $Rotate: 0.7} }, //Rotate HDouble- out {$Duration: 1000, x: 0.5, y: 0.3, $Cols: 2, $Zoom: 1, $Rotate: 1, $SlideOut: true, $Assembly: 2049, $ChessMode: { $Column: 15 }, $Easing: { $Left: $JssorEasing$.$EaseInExpo, $Top: $JssorEasing$.$EaseInExpo, $Zoom: $JssorEasing$.$EaseInExpo, $Opacity: $JssorEasing$.$EaseLinear, $Rotate: $JssorEasing$.$EaseInExpo }, $Opacity: 2, $Round: { $Rotate: 0.7} }, //Rotate VFork in {$Duration: 1200, x: -4, y: 2, $Rows: 2, $Zoom: 11, $Rotate: 1, $Assembly: 2049, $ChessMode: { $Row: 28 }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Top: $JssorEasing$.$EaseInCubic, $Zoom: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseOutQuad, $Rotate: $JssorEasing$.$EaseInCubic }, $Opacity: 2, $Round: { $Rotate: 0.7} }, //Rotate HFork in {$Duration: 1200, x: 1, y: 2, $Cols: 2, $Zoom: 11, $Rotate: 1, $Assembly: 2049, $ChessMode: { $Column: 19 }, $Easing: { $Left: $JssorEasing$.$EaseInCubic, $Top: $JssorEasing$.$EaseInCubic, $Zoom: $JssorEasing$.$EaseInCubic, $Opacity: $JssorEasing$.$EaseOutQuad, $Rotate: $JssorEasing$.$EaseInCubic }, $Opacity: 2, $Round: { $Rotate: 0.8} } ]; var options = { $AutoPlay: true, //[Optional] Whether to auto play, to enable slideshow, this option must be set to true, default value is false $AutoPlayInterval: 2500, //[Optional] Interval (in milliseconds) to go for next slide since the previous stopped if the slider is auto playing, default value is 3000 $PauseOnHover: 3, //[Optional] Whether to pause when mouse over if a slider is auto playing, 0 no pause, 1 pause for desktop, 2 pause for touch device, 3 pause for desktop and touch device, 4 freeze for desktop, 8 freeze for touch device, 12 freeze for desktop and touch device, default value is 1 $DragOrientation: 3, //[Optional] Orientation to drag slide, 0 no drag, 1 horizental, 2 vertical, 3 either, default value is 1 (Note that the $DragOrientation should be the same as $PlayOrientation when $DisplayPieces is greater than 1, or parking position is not 0) $ArrowKeyNavigation: true, //[Optional] Allows keyboard (arrow key) navigation or not, default value is false $SlideDuration: 600, //Specifies default duration (swipe) for slide in milliseconds $SlideshowOptions: { //[Optional] Options to specify and enable slideshow or not $Class: $JssorSlideshowRunner$, //[Required] Class to create instance of slideshow $Transitions: _SlideshowTransitions, //[Required] An array of slideshow transitions to play slideshow $TransitionsOrder: 0, //[Optional] The way to choose transition to play slide, 1 Sequence, 0 Random $ShowLink: true //[Optional] Whether to bring slide link on top of the slider when slideshow is running, default value is false }, $ArrowNavigatorOptions: { //[Optional] Options to specify and enable arrow navigator or not $Class: $JssorArrowNavigator$, //[Requried] Class to create arrow navigator instance $ChanceToShow: 1, //[Required] 0 Never, 1 Mouse Over, 2 Always $AutoCenter: 2, //[Optional] Auto center navigator in parent container, 0 None, 1 Horizontal, 2 Vertical, 3 Both, default value is 0 $Steps: 1 //[Optional] Steps to go for each navigation request, default value is 1 }, $ThumbnailNavigatorOptions: { //[Optional] Options to specify and enable thumbnail navigator or not $Class: $JssorThumbnailNavigator$, //[Required] Class to create thumbnail navigator instance $ChanceToShow: 2, //[Required] 0 Never, 1 Mouse Over, 2 Always $ActionMode: 1, //[Optional] 0 None, 1 act by click, 2 act by mouse hover, 3 both, default value is 1 $Lanes: 2, //[Optional] Specify lanes to arrange thumbnails, default value is 1 $SpacingX: 14, //[Optional] Horizontal space between each thumbnail in pixel, default value is 0 $SpacingY: 12, //[Optional] Vertical space between each thumbnail in pixel, default value is 0 $DisplayPieces: 6, //[Optional] Number of pieces to display, default value is 1 $ParkingPosition: 156, //[Optional] The offset position to park thumbnail $Orientation: 2 //[Optional] Orientation to arrange thumbnails, 1 horizental, 2 vertical, default value is 1 } }; var jssor_slider1 = new $JssorSlider$("slider1_container", options); //responsive code begin //you can remove responsive code if you don't want the slider scales while window resizes function ScaleSlider() { var parentWidth = jssor_slider1.$Elmt.parentNode.clientWidth; if (parentWidth) jssor_slider1.$ScaleWidth(Math.max(Math.min(parentWidth, 960), 300)); else window.setTimeout(ScaleSlider, 30); } ScaleSlider(); $(window).bind("load", ScaleSlider); $(window).bind("resize", ScaleSlider); $(window).bind("orientationchange", ScaleSlider); //responsive code end }); </script> <!-- Jssor Slider Begin --> <!-- You can move inline styles to css file or css block. --> <div id="slider1_container" style="position: relative; top: 0px; left: 0px; width: 960px; height: 1080px; background: #191919; overflow: hidden;"> <!-- Loading Screen --> <div u="loading" style="position: absolute; top: 0px; left: 0px;"> <div style="filter: alpha(opacity=70); opacity:0.7; position: absolute; display: block; background-color: #000000; top: 0px; left: 0px;width: 100%;height:100%;"> </div> <div style="position: absolute; display: block; background: url(../../_Assets/images/Heart_Loading.gif) no-repeat center center; top: 0px; left: 0px;width: 100%;height:100%;"> </div> </div> <!-- Slides Container --> <div u="slides" style="cursor: move; position: absolute; left: 240px; top: 0px; width: 720px; height: 1080px; overflow: hidden;"> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_001.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_001.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_002.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_002.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_003.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_003.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_004.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_004.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_005.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_005.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_006.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_006.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_008.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_008.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_010.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_010.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_013.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_013.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_014.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_014.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_019.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_019.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_020.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_020.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_021.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_021.jpg" /> </div> <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_022.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_022.jpg" /> </div> </div> <!-- Arrow Navigator Skin Begin --> <style> /* jssor slider arrow navigator skin 05 css */ /* .jssora05l (normal) .jssora05r (normal) .jssora05l:hover (normal mouseover) .jssora05r:hover (normal mouseover) .jssora05ldn (mousedown) .jssora05rdn (mousedown) */ .jssora05l, .jssora05r, .jssora05ldn, .jssora05rdn { position: absolute; cursor: pointer; display: block; background: url(../img/a17.png) no-repeat; overflow:hidden; } .jssora05l { background-position: -10px -40px; } .jssora05r { background-position: -70px -40px; } .jssora05l:hover { background-position: -130px -40px; } .jssora05r:hover { background-position: -190px -40px; } .jssora05ldn { background-position: -250px -40px; } .jssora05rdn { background-position: -310px -40px; } </style> <!-- Arrow Left --> <span u="arrowleft" class="jssora05l" style="width: 40px; height: 40px; top: 158px; left: 248px;"> </span> <!-- Arrow Right --> <span u="arrowright" class="jssora05r" style="width: 40px; height: 40px; top: 158px; right: 8px"> </span> <!-- Arrow Navigator Skin End --> <!-- Thumbnail Navigator Skin 02 Begin --> <div u="thumbnavigator" class="jssort02" style="position: absolute; width: 240px; height: 480px; left:0px; bottom: 0px;"> <!-- Thumbnail Item Skin Begin --> <style> /* jssor slider thumbnail navigator skin 02 css */ /* .jssort02 .p (normal) .jssort02 .p:hover (normal mouseover) .jssort02 .pav (active) .jssort02 .pav:hover (active mouseover) .jssort02 .pdn (mousedown) */ .jssort02 .w { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; } .jssort02 .c { position: absolute; top: 0px; left: 0px; width: 95px; height: 62px; border: #000 2px solid; } .jssort02 .p:hover .c, .jssort02 .pav:hover .c, .jssort02 .pav .c { background: url(../../_Assets/images/t01.png) center center; border-width: 0px; top: 2px; left: 2px; width: 95px; height: 62px; } .jssort02 .p:hover .c, .jssort02 .pav:hover .c { top: 0px; left: 0px; width: 97px; height: 64px; border: #fff 1px solid; } </style> <div u="slides" style="cursor: move;"> <div u="prototype" class="p" style="position: absolute; width: 99px; height: 149px; top: 0; left: 0;"> <div class=w><div u="thumbnailtemplate" style=" width: 100%; height: 100%; border: none;position:absolute; top: 0; left: 0;"></div></div> <div class=c> </div> </div> </div> <!-- Thumbnail Item Skin End --> </div> <!-- Thumbnail Navigator Skin End --> <a style="display: none" href="http://www.jssor.com">javascript</a> </div> 

認為我需要為每個圖像div添加一個縮略圖的彩色版本的引用,並使用不同的引用名稱,如下所示,然后以某種方式引用它,而不是當前使用的t01.png。

  <div> <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_004.jpg" /> <img u="thumb" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_004.jpg" /> <img u="thumb_CL" src="../../Images/Gallery/Engagement/thumb_CL/Tall/_IMG_004.jpg" /> </div> 

您可以使用DIV定義縮略圖,

<div>
    <img u="image" src="../../Images/Gallery/Engagement/image/Tall/_IMG_004.jpg" />
    <div u="thumb">
        <img class="thumb1" src="../../Images/Gallery/Engagement/thumb_BnW/Tall/_IMG_004.jpg" />
        <img class="thumb2" src="../../Images/Gallery/Engagement/thumb_CL/Tall/_IMG_004.jpg" />
    </div>
</div>

然后定義您的縮略圖導航器外觀,

<!-- Thumbnail Item Skin Begin -->
<style>
    /* jssor slider thumbnail navigator skin 01 css */
    /*
    .jssort01 .p           (normal)
    .jssort01 .p:hover     (normal mouseover)
    .jssort01 .pav           (active)
    .jssort01 .pav:hover     (active mouseover)
    .jssort01 .pdn           (mousedown)
    */
    .jssort01 .p .thumb1 {
        display: block;
    }
    .jssort01 .p:hover .thumb1 {
        display: none;
    }
    .jssort01 .p .thumb2 {
        display: none;
    }
    .jssort01 .p:hover .thumb2 {
        display: block;
    }
</style>
<div u="slides" style="cursor: move;">
    <div u="prototype" class="p" style="position: absolute; width: 72px; height: 72px; top: 0; left: 0;">
        <div u="thumbnailtemplate" style="width: 100%; height: 100%; border: none;position:absolute; top: 0; left: 0;"></div>
    </div>
</div>
<!-- Thumbnail Item Skin End -->

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM