Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
enterprise:demos:slider [2021/10/24 23:46]
admin created
enterprise:demos:slider [2021/10/25 00:00] (current)
admin
Line 1: Line 1:
 +~~Title:slider ~~
 +
 +====== Demo : Slider ======
 +===== Overview =====
 +This is a slider sample.
 +This is a common scene on real estate rental sites. There are panoramic photos of the living room, kitchen, bathroom, toilet, etc. of the room, and you can switch the playback with the slider.
 +
 +===== Running =====
 <HTML> <HTML>
 <!-- The Gallery as inline carousel, can be positioned anywhere on the page --> <!-- The Gallery as inline carousel, can be positioned anywhere on the page -->
Line 11: Line 19:
  
 <script> <script>
-    function initPage(langx,domx,oneplayer) {+  function initPage(langx,domx,oneplayer) {
     var $ = domx.query;     var $ = domx.query;
  
Line 17: Line 25:
       "utilhub-toolkits-comctrls-carousels"       "utilhub-toolkits-comctrls-carousels"
     ],function(carousels) {     ],function(carousels) {
- 
- 
       'use strict'       'use strict'
  
Line 26: Line 32:
         {         {
           title: 'living room',           title: 'living room',
-          href: '/_media/enterprise/demos/1k_01_living_room.jpgp',+          href: '/medias/enterprise/demos/1k_01_living_room.jpgp',
          type: 'image/panorama+jpeg',          type: 'image/panorama+jpeg',
-         poster: '/_media/enterprise/demos/1k_01_living_room.jpgp'+         poster: '/medias/enterprise/demos/1k_01_living_room.jpgp'
         },         },
         {         {
           title: 'kitchen',           title: 'kitchen',
-          href: '/_media/enterprise/demos/1k_02_kitchen.jpgp',+          href: '/medias/enterprise/demos/1k_02_kitchen.jpgp',
          type: 'image/panorama+jpeg',          type: 'image/panorama+jpeg',
-         poster: '/_media/enterprise/demos/1k_02_kitchen.jpgp'+         poster: '/medias/enterprise/demos/1k_02_kitchen.jpgp'
         },         },
         {         {
           title: 'bathroom',           title: 'bathroom',
-          href: '/_media/enterprise/demos/1k_03_bathroom.jpgp',+          href: '/medias/enterprise/demos/1k_03_bathroom.jpgp',
          type: 'image/panorama+jpeg',          type: 'image/panorama+jpeg',
-         poster: '/_media/enterprise/demos/1k_03_bathroom.jpgp'+         poster: '/medias/enterprise/demos/1k_03_bathroom.jpgp'
         },         },
         {         {
           title: 'washroom',           title: 'washroom',
-          href: '/_media/enterprise/demos/1k_04_washroom.jpgp',+          href: '/medias/enterprise/demos/1k_04_washroom.jpgp',
          type: 'image/panorama+jpeg',          type: 'image/panorama+jpeg',
-         poster: '/_media/enterprise/demos/1k_04_washroom.jpgp'+         poster: '/medias/enterprise/demos/1k_04_washroom.jpgp'
         },         },
         {         {
           title: 'toilet',           title: 'toilet',
-          href: '/_media/enterprise/demos/1k_05_toilet.jpgp',+          href: '/medias/enterprise/demos/1k_05_toilet.jpgp',
          type: 'image/panorama+jpeg',          type: 'image/panorama+jpeg',
-         poster: '/_media/enterprise/demos/1k_05_toilet.jpgp'+         poster: '/medias/enterprise/demos/1k_05_toilet.jpgp'
         }         }
                  
       ];       ];
  
-        var players = []; +      var players = []; 
-        var playingPlayer; +      var playingPlayer; 
-        function onSlide(e) { +      function onSlide(e) { 
-          if (playingPlayer) { +        if (playingPlayer) { 
-            playingPlayer.stop(); +          playingPlayer.stop(); 
-            ///playingPlayer.pause(); +          ///playingPlayer.pause();
-          } +
- +
-          players[e.toIndex].resize();+
         }         }
  
 +        players[e.toIndex].resize();
 +      }
  
-        function renderMediaItem(item, callback) { +      function renderMediaItem(item, callback) { 
-          item.altText = item.altText || item.title;+        item.altText = item.altText || item.title;
  
 +        let playerElement = $("<div class=\"u-oneplayer\"/>")[0],
 +            player = new oneplayer.Player(playerElement,{
 +                picker : false,
 +                autoplay : false,
 +                fileOptions :{
 +                  type : item.type,
 +                  url : item.href
 +                },
 +                poster : item.poster,
  
 +            });
  
 +        player.on("pause",function(){
 +          playingPlayer = null;
 +        });
  
-          let playerElement = $("<div class=\"u-oneplayer\"/>")[0], +        player.on("play",function()
-              player = new oneplayer.Player(playerElement,+          playingPlayer = player; 
-                  picker : false, +        });
-                  autoplay : false, +
-                  fileOptions :{ +
-                    type : item.type, +
-                    url : item.href +
-                  }+
-                  poster : item.poster,+
  
-              });+        players.push(player); 
 +        return playerElement; 
 +      }
  
-          //    player.src({ 
-          //       type: item.type, 
-          //        src: item.href  
-          //    }); 
  
 +      $('#media-carousel').plugin("utilhub.toolkits.comctrls.carousel",{
 +          cycle : {
 +            interval:0
 +          },
 +          data : {
 +            items: medias 
 +          },
 +          mode : "slide",
 +          start : 0,
 +          onjumped : onSlide,
  
-          player.on("pause",function(){ +          item : { 
-            playingPlayer null+            template : renderMediaItem 
-          });+          }, 
 +         indicators : { 
 +            indicator : { 
 +              template : "<li " +  
 +                "<% if (title) { %>+   
 +                  "title = \"<%= title %>\""+  
 +                "<% } %>" +   
 +                "<% if (poster) { %>" +   
 +                  " style \"background: url('<%= poster %>'\""+  
 +                "<% } %>"+  
 +             "/>" 
 +            } 
 +         } 
 +      })
 +    }); 
 +  } 
 +</script>
  
-          player.on("play",function(){ +<link type="text/cssrel="stylesheet" href="/lib/tpl/skydoku/assets/oneplayer/css/oneplayer-all.css">
-            playingPlayer player; +
-          });+
  
-          players.push(player); +<style> 
-          return playerElement;+    .lark-carousel.slide { 
 +          width:680px; 
 +          height:480px; 
 +          margin:1em auto;     
 +          max-width: 100%; 
 +         max-height: 100%; 
 +    } 
 +    .lark-carousel.slide .indicators { 
 +          z-index: 100; 
 +          bottom: 30px; 
 +          background: #00000080; 
 +          margin: 0; 
 +          padding: 0; 
 +          right: 0; 
 +          left: 0; 
 +          height: 80px; 
 +     } 
 + 
 +     .uop-poster{ 
 +        background-size: cover; 
 +     } 
 + 
 +      .lark-carousel.slide > .indicators > li { 
 +          width : 60px; 
 +          height: 60px; 
 +          background-size: 100% 100% !important; 
 +      } 
 + 
 +</style> 
 +</HTML> 
 +===== Code ===== 
 +<code> 
 +<!-- The Gallery as inline carousel, can be positioned anywhere on the page --> 
 +<div id="media-carousel" class="lark-carousel slide" style="width:900px;height:600px;margin:1em auto;max-width:95%"> 
 +    <div class="items"></div> 
 +    <h3 class="title"></h3> 
 +    <a class="prev">‹</a> 
 +    <a class="next">›</a> 
 +    <ol class="indicators"></ol> 
 +</div> 
 +<br> 
 + 
 +<script> 
 +  function initPage(langx,domx,oneplayer
 +    var $ = domx.query; 
 + 
 +    require([ 
 +      "utilhub-toolkits-comctrls-carousels" 
 +    ],function(carousels) { 
 +      'use strict' 
 + 
 +      // Initialize the Gallery as video carousel: 
 + 
 +      var medias = [ 
 +        { 
 +          title: 'living room', 
 +          href: '/medias/enterprise/demos/1k_01_living_room.jpgp', 
 +         type: 'image/panorama+jpeg', 
 +         poster: '/medias/enterprise/demos/1k_01_living_room.jpgp' 
 +        }, 
 +        { 
 +          title: 'kitchen', 
 +          href: '/medias/enterprise/demos/1k_02_kitchen.jpgp', 
 +         type: 'image/panorama+jpeg', 
 +         poster: '/medias/enterprise/demos/1k_02_kitchen.jpgp' 
 +        }, 
 +        { 
 +          title: 'bathroom', 
 +          href: '/medias/enterprise/demos/1k_03_bathroom.jpgp', 
 +         type: 'image/panorama+jpeg', 
 +         poster: '/medias/enterprise/demos/1k_03_bathroom.jpgp' 
 +        }, 
 +        { 
 +          title: 'washroom', 
 +          href: '/medias/enterprise/demos/1k_04_washroom.jpgp', 
 +         type: 'image/panorama+jpeg', 
 +         poster: '/medias/enterprise/demos/1k_04_washroom.jpgp' 
 +        }, 
 +        { 
 +          title: 'toilet', 
 +          href: '/medias/enterprise/demos/1k_05_toilet.jpgp', 
 +         type: 'image/panorama+jpeg', 
 +         poster: '/medias/enterprise/demos/1k_05_toilet.jpgp'
         }         }
 +        
 +      ];
 +
 +      var players = [];
 +      var playingPlayer;
 +      function onSlide(e) {
 +        if (playingPlayer) {
 +          playingPlayer.stop();
 +          ///playingPlayer.pause();
 +        }
 +
 +        players[e.toIndex].resize();
 +      }
 +
 +      function renderMediaItem(item, callback) {
 +        item.altText = item.altText || item.title;
 +
 +        let playerElement = $("<div class=\"u-oneplayer\"/>")[0],
 +            player = new oneplayer.Player(playerElement,{
 +                picker : false,
 +                autoplay : false,
 +                fileOptions :{
 +                  type : item.type,
 +                  url : item.href
 +                },
 +                poster : item.poster,
 +
 +            });
 +
 +        player.on("pause",function(){
 +          playingPlayer = null;
 +        });
 +
 +        player.on("play",function(){
 +          playingPlayer = player;
 +        });
 +
 +        players.push(player);
 +        return playerElement;
 +      }
  
  
Line 133: Line 289:
          }          }
       });       });
- 
- 
     });     });
-}+  }
 </script> </script>
  
Line 171: Line 325:
  
 </style> </style>
-</HTML>+</code>