2015-02-08 72 views
0

您好我正在集成JSSOR滑塊與我的數據庫圖像。來自數據庫的圖像沒有得到加載在Jssor Slider

我在我的index.html中添加了代碼。

<div id="slider1_container" style="position: relative; top: 0px; left: 0px; width: 600px; height: 327px; background: #fff; overflow: hidden; "> 

    <!-- Slides Container --> 
    <div u="slides" style="cursor: move; position: absolute; left:50px; right:20px; top: 50px; width: 475px; height: 300px; 
     overflow: hidden;"> 

     <div> 
      <img src="test/01.jpg" /> 
     </div> 
</div> 
</div> 

然後在我的JS文件

/*Gallery Item Start*/ 

    $('#galleryItem').on('pageshow', function() 
    { 
         var verticaltext = ""; 

         var allItems = Tables.images.all(); 

         var rating = []; 
         allItems.list(null, function (results) 
            { 
            results.forEach(function (r) 
             { 

            // alert(JSON.stringify(r)); 
             rating.push([r.capturedDate, r.name, r.ratingTreatment, r.ratingSkinCleansing, r.ratingPlucking, r.ratingView, r.ratingLastVal, r.capturedDate]); 

             }); 

            $.each(rating, function (key, value) { 
              console.log("record is " + value[1]); 
              verticaltext = verticaltext + "<div><img src=" + value[1] +"></div>" 
              }); 

//          verticaltext = verticaltext + "</div>"; 
            console.log("FULL HTML IS " +verticaltext); 
            sliderDataReady(verticaltext); 
            }); 

    }); 


/*created a function which should be called with the ready html to bind to 
JSSOR SLider*/ 

function sliderDataReady(slideData) 
    { 
    console.log("slider1_container HTML : " +$('#slider1_container').html()); 

    console.log(" slides HTML : " +$('#slides').html()); 


    $('#slides').append(slideData); 

    console.log(" slides HTML : " +$('slides').html()); 

    /* Gallery items carousel slider - start */ 
    var options = { 
    $StartIndex: 0,     //[Optional] Index of slide to display when initialize, default value is 0 

    $LazyLoading: 3, 
    $AutoPlay: false,         //[Optional] Whether to auto play, to enable slideshow, this option must be set to true, default value is false 
    $AutoPlaySteps: 1,         //[Optional] Steps to go for each navigation request (this options applys only when slideshow disabled), the default value is 1 
    $AutoPlayInterval: 4000,       //[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 
    $Loop: 0,          // Enable loop(circular) of carousel or not, 0: stop, 1: loop, 2 rewind, default value is 1 
    $ArrowKeyNavigation: true,      //[Optional] Allows keyboard (arrow key) navigation or not, default value is false 
    $SlideDuration: 500,        //[Optional] Specifies default duration (swipe) for slide in milliseconds, default value is 500 
    $MinDragOffsetToSlide: 20,       //[Optional] Minimum drag offset to trigger slide , default value is 20 
    //$SlideWidth: 600,         //[Optional] Width of every slide in pixels, default value is width of 'slides' container 
    //$SlideHeight: 300,        //[Optional] Height of every slide in pixels, default value is height of 'slides' container 
    $SlideSpacing: 5,          //[Optional] Space between each slide in pixels, default value is 0 
    $DisplayPieces: 1,         //[Optional] Number of pieces to display (the slideshow would be disabled if the value is set to greater than 1), the default value is 1 
    $ParkingPosition: 0,        //[Optional] The offset position to park slide (this options applys only when slideshow disabled), default value is 0. 
    $UISearchMode: 1,         //[Optional] The way (0 parellel, 1 recursive, default value is 1) to search UI components (slides container, loading screen, navigator container, arrow navigator container, thumbnail navigator container etc). 
    $PlayOrientation: 1,        //[Optional] Orientation to play slide (for auto play, navigation), 1 horizental, 2 vertical, 5 horizental reverse, 6 vertical reverse, default value is 1 
    $DragOrientation: 1,        //[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) 

    $ThumbnailNavigatorOptions: { 
    $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 
    $AutoCenter: 3,        //[Optional] Auto center thumbnail items in the thumbnail navigator container, 0 None, 1 Horizontal, 2 Vertical, 3 Both, default value is 3 
    $Lanes: 1,          //[Optional] Specify lanes to arrange thumbnails, default value is 1 
    $SpacingX: 1,         //[Optional] Horizontal space between each thumbnail in pixel, default value is 0 
    $SpacingY: 0,         //[Optional] Vertical space between each thumbnail in pixel, default value is 0 
    $DisplayPieces: 5,        //[Optional] Number of pieces to display, default value is 1 
    $ParkingPosition: 0,       //[Optional] The offset position to park thumbnail 
    $Orientation: 1,        //[Optional] Orientation to arrange thumbnails, 1 horizental, 2 vertical, default value is 1 
    $DisableDrag: true        //[Optional] Disable drag or not, default value is false 
    } 
    }; 

// var jssor_slider1 = new $JssorSlider$("slider1_container", options); 

    var jssor_slider1 = new $JssorSlider$(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) { 
    var sliderWidth = parentWidth; 

    //keep the slider width no more than 600 
    sliderWidth = Math.min(sliderWidth, 600); 

    jssor_slider1.$ScaleWidth(sliderWidth); 
    } 
    else 
    window.setTimeout(ScaleSlider, 30); 
    } 
    ScaleSlider(); 

    $(window).bind("load", ScaleSlider); 
    $(window).bind("resize", ScaleSlider); 
    $(window).bind("orientationchange", ScaleSlider); 
    //responsive code end 


    /* JSSOR EVENTS*/ 
    jssor_slider1.$On($JssorSlider$.$EVT_CLICK, SlideShowSlideIndex); 
    jssor_slider1.$On($JssorSlider$.$EVT_DRAG_START, SlideShowStartDragSlide); 
    jssor_slider1.$On($JssorSlider$.$EVT_DRAG_END, SlideShowEndDragSlide); 
    jssor_slider1.$On($JssorSlider$.$EVT_SLIDESHOW_END, SlideShowEnded); 
    jssor_slider1.$On($JssorSlider$.$EVT_POSITION_CHANGE, SlidePositionChanged); 
    jssor_slider1.$On($JssorSlider$.$EVT_PARK, SlideStoppedSliding); 
    } 

我試圖讓HTML,然後叫一個方法來加載我JSSOR滑塊。

請糾正我,我錯了我

任何幫助,將不勝感激。

回答

0

根據您的代碼$('#slides')。append(slideData),請將id屬性添加到'幻燈片'容器。

<div id="slides" u="slides" 
+0

Thanks @Jssor,如何在頁面顯示中每次刷新我的滑塊?如果我使用$('#slider1_container')。remove();然後它會刪除我的滑塊,但之後如果我使用jssor_slider1 = new $ JssorSlider $(「slider1_container」,options);它不會刷新或重新創建我的滑塊 – 2015-02-09 11:05:04

+0

當您得到'slider1_removed'時,您需要手動重新創建'slider1_container'並將其插入到dom中。然後,您可以使用語句jssor_slider1 = new $ JssorSlider $(「slider1_container」,options)重新初始化jssor滑塊; – jssor 2015-02-09 11:28:44