carousel.html 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>layui</title>
  6. <meta name="renderer" content="webkit">
  7. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  8. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  9. <style>img{ width:100%; height:auto;}</style>
  10. <link rel="stylesheet" href="../css/xadmin.css">
  11. <link rel="stylesheet" type="text/css" href="../lib/layui/css/layui.css">
  12. <!-- 注意:如果你直接复制所有代码到本地,上述css路径需要改成你本地的 -->
  13. </head>
  14. <body class="form-wrap">
  15. <div class="layui-fluid">
  16. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  17. <legend>常规轮播</legend>
  18. </fieldset>
  19. <div class="layui-carousel" id="test1" lay-filter="test1">
  20. <div carousel-item="">
  21. <div class="layui-bg-gray">条目1</div>
  22. <div class="layui-bg-green">条目2</div>
  23. <div class="layui-bg-gray">条目3</div>
  24. <div class="layui-bg-gray">条目4</div>
  25. </div>
  26. </div>
  27. <div class="layui-carousel" id="test2" style="margin-top: 15px;">
  28. <div carousel-item="">
  29. <div class="layui-bg-gray">条目1</div>
  30. <div class="layui-bg-gray">条目2</div>
  31. </div>
  32. </div>
  33. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 30px;">
  34. <legend>设定各种参数</legend>
  35. </fieldset>
  36. <div class="layui-form">
  37. <div class="layui-form-item">
  38. <div class="layui-inline">
  39. <label class="layui-form-label">宽高</label>
  40. <div class="layui-input-inline" style="width: 98px;">
  41. <input type="tel" name="width" value="600" autocomplete="off" placeholder="width" class="layui-input demoSet">
  42. </div>
  43. <div class="layui-input-inline" style="width: 98px;">
  44. <input type="tel" name="height" value="280" autocomplete="off" placeholder="height" class="layui-input demoSet">
  45. </div>
  46. </div>
  47. </div>
  48. <div class="layui-form-item">
  49. <label class="layui-form-label">动画类型</label>
  50. <div class="layui-input-block">
  51. <div class="layui-btn-group demoTest" style="margin-top: 5px;">
  52. <button class="layui-btn layui-btn-sm" style="background-color: #5FB878;" data-type="set" data-key="anim" data-value="default">左右切换</button>
  53. <button class="layui-btn layui-btn-sm" data-type="set" data-key="anim" data-value="updown">上下切换</button>
  54. <button class="layui-btn layui-btn-sm" data-type="set" data-key="anim" data-value="fade">渐隐渐显</button>
  55. </div>
  56. </div>
  57. </div>
  58. <div class="layui-form-item">
  59. <label class="layui-form-label">箭头状态</label>
  60. <div class="layui-input-block">
  61. <div class="layui-btn-group demoTest" style="margin-top: 5px;">
  62. <button class="layui-btn layui-btn-sm" style="background-color: #5FB878;" data-type="set" data-key="arrow" data-value="hover">悬停显示</button>
  63. <button class="layui-btn layui-btn-sm" data-type="set" data-key="arrow" data-value="always">始终显示</button>
  64. <button class="layui-btn layui-btn-sm" data-type="set" data-key="arrow" data-value="none">不显示</button>
  65. </div>
  66. </div>
  67. </div>
  68. <div class="layui-form-item">
  69. <label class="layui-form-label">指示器位置</label>
  70. <div class="layui-input-block">
  71. <div class="layui-btn-group demoTest" style="margin-top: 5px;">
  72. <button class="layui-btn layui-btn-sm" style="background-color: #5FB878;" data-key="indicator" data-type="set" data-value="inside">容器内部</button>
  73. <button class="layui-btn layui-btn-sm" data-type="set" data-key="indicator" data-value="outside">容器外部</button>
  74. <button class="layui-btn layui-btn-sm" data-type="set" data-key="indicator" data-value="none">不显示</button>
  75. </div>
  76. </div>
  77. </div>
  78. <div class="layui-form-item">
  79. <div class="layui-inline">
  80. <label class="layui-form-label">自动切换</label>
  81. <div class="layui-input-block">
  82. <input type="checkbox" name="switch" lay-skin="switch" checked="" lay-text="ON|OFF" lay-filter="autoplay">
  83. </div>
  84. </div>
  85. <div class="layui-inline">
  86. <label class="layui-form-label" style="width: auto;">时间间隔</label>
  87. <div class="layui-input-inline" style="width: 120px;">
  88. <input type="tel" name="interval" value="3000" autocomplete="off" placeholder="毫秒" class="layui-input demoSet">
  89. </div>
  90. </div>
  91. </div>
  92. </div>
  93. <div class="layui-carousel" id="test3" lay-filter="test4">
  94. <div carousel-item="">
  95. <div class="layui-bg-gray">条目1</div>
  96. <div class="layui-bg-gray">条目2</div>
  97. <div class="layui-bg-gray">条目3</div>
  98. <div class="layui-bg-gray">条目4</div>
  99. <div class="layui-bg-gray">条目5</div>
  100. </div>
  101. </div>
  102. <fieldset class="layui-elem-field layui-field-title" style="margin-top: 50px;">
  103. <legend>填充轮播元素 - 以图片为例</legend>
  104. </fieldset>
  105. <div class="layui-carousel" id="test10">
  106. <div carousel-item="">
  107. <div><img src="../images/pic/1.png" ></div>
  108. <div><img src="../images/pic/2.png" ></div>
  109. <div><img src="../images/pic/3.png" ></div>
  110. </div>
  111. </div>
  112. <script type="text/javascript" src="../lib/layui/layui.js" charset="utf-8"></script>
  113. <!-- 注意:如果你直接复制所有代码到本地,上述js路径需要改成你本地的 -->
  114. <script>
  115. layui.use(['carousel', 'form'], function(){
  116. var carousel = layui.carousel
  117. ,form = layui.form;
  118. //常规轮播
  119. carousel.render({
  120. elem: '#test1'
  121. ,arrow: 'always'
  122. });
  123. //改变下时间间隔、动画类型、高度
  124. carousel.render({
  125. elem: '#test2'
  126. ,interval: 1800
  127. ,anim: 'fade'
  128. ,height: '120px'
  129. });
  130. //设定各种参数
  131. var ins3 = carousel.render({
  132. elem: '#test3'
  133. });
  134. //图片轮播
  135. carousel.render({
  136. elem: '#test10'
  137. ,width: '800px'
  138. ,height: '440px'
  139. ,interval: 5000
  140. });
  141. //事件
  142. carousel.on('change(test4)', function(res){
  143. console.log(res)
  144. });
  145. var $ = layui.$, active = {
  146. set: function(othis){
  147. var THIS = 'layui-bg-normal'
  148. ,key = othis.data('key')
  149. ,options = {};
  150. othis.css('background-color', '#5FB878').siblings().removeAttr('style');
  151. options[key] = othis.data('value');
  152. ins3.reload(options);
  153. }
  154. };
  155. //监听开关
  156. form.on('switch(autoplay)', function(){
  157. ins3.reload({
  158. autoplay: this.checked
  159. });
  160. });
  161. $('.demoSet').on('keyup', function(){
  162. var value = this.value
  163. ,options = {};
  164. if(!/^\d+$/.test(value)) return;
  165. options[this.name] = value;
  166. ins3.reload(options);
  167. });
  168. //其它示例
  169. $('.demoTest .layui-btn').on('click', function(){
  170. var othis = $(this), type = othis.data('type');
  171. active[type] ? active[type].call(this, othis) : '';
  172. });
  173. });
  174. </script>
  175. </div>
  176. </body>
  177. </html>