1 <template>
2 <div class="swiper mySwiper">
3 <div class="swiper-wrapper">
4 <div class="swiper-slide">
5 <h4>Scroll Container</h4>
6 <p>
7 Lorem ipsum dolor sit amet, consectetur adipiscing elit. In luctus, ex
8 eu sagittis faucibus, ligula ipsum sagittis magna, et imperdiet dolor
9 lectus eu libero. Vestibulum venenatis eget turpis sed faucibus.
10 Maecenas in ullamcorper orci, eu ullamcorper sem. Etiam elit ante,
11 luctus non ante sit amet, sodales vulputate odio. Aenean tristique
12 nisl tellus, sit amet fringilla nisl volutpat cursus. Quisque
13 dignissim lectus ac nunc consectetur mattis. Proin vel hendrerit
14 ipsum, et lobortis dolor. Vestibulum convallis, nibh et tincidunt
15 tristique, nisl risus facilisis lectus, ut interdum orci nisl ac nunc.
16 Cras et aliquam felis. Quisque vel ipsum at elit sodales posuere eget
17 non est. Fusce convallis vestibulum dolor non volutpat. Vivamus
18 vestibulum quam ut ultricies pretium.
19 </p>
20 <p>
21 Suspendisse rhoncus fringilla nisl. Mauris eget lorem ac urna
22 consectetur convallis non vel mi. Donec libero dolor, volutpat ut urna
23 sit amet, aliquet molestie purus. Phasellus faucibus, leo vel
24 scelerisque lobortis, ipsum leo sollicitudin metus, eget sagittis ante
25 orci eu ipsum. Nulla ac mauris eu risus sagittis scelerisque iaculis
26 bibendum mauris. Cras ut egestas orci. Cras odio risus, sagittis ut
27 nunc vitae, aliquam consectetur purus. Vivamus ornare nunc vel tellus
28 facilisis, quis dictum elit tincidunt. Donec accumsan nisi at laoreet
29 sodales. Cras at ullamcorper massa. Maecenas at facilisis ex. Nam
30 mollis dignissim purus id efficitur.
31 </p>
32 <p>
33 Curabitur eget aliquam erat. Curabitur a neque vitae purus volutpat
34 elementum. Vivamus quis vestibulum leo, efficitur ullamcorper velit.
35 Integer tincidunt finibus metus vel porta. Mauris sed mauris congue,
36 pretium est nec, malesuada purus. Nulla hendrerit consectetur arcu et
37 lacinia. Suspendisse augue justo, convallis eget arcu in, pretium
38 tempor ligula. Nullam vulputate tincidunt est ut ullamcorper.
39 </p>
40 <p>
41 Curabitur sed sodales leo. Nulla facilisi. Etiam condimentum, nisi id
42 tempor vulputate, nisi justo cursus justo, pellentesque condimentum
43 diam arcu sit amet leo. Cum sociis natoque penatibus et magnis dis
44 parturient montes, nascetur ridiculus mus. In placerat tellus a
45 posuere vehicula. Donec diam massa, efficitur vitae mattis et, pretium
46 in augue. Fusce iaculis mi quis ante venenatis, sit amet pellentesque
47 orci aliquam. Vestibulum elementum posuere vehicula.
48 </p>
49 <p>
50 Sed tincidunt diam a massa pharetra faucibus. Praesent condimentum id
51 arcu nec fringilla. Maecenas faucibus, ante et venenatis interdum,
52 erat mi eleifend dui, at convallis nisl est nec arcu. Duis vitae arcu
53 rhoncus, faucibus magna ut, tempus metus. Cras in nibh sed ipsum
54 consequat rhoncus. Proin fringilla nulla ut augue tempor fermentum.
55 Nunc hendrerit non nisi vitae finibus. Donec eget ornare libero.
56 Aliquam auctor erat enim, a semper risus semper at. In ut dui in metus
57 tincidunt euismod eget et lacus. Aenean et dictum urna, sed rhoncus
58 lorem. Duis pharetra sagittis odio. Etiam a libero ut nisi feugiat
59 tincidunt vel vitae turpis. Maecenas vel orci sit amet lorem hendrerit
60 venenatis sollicitudin ut dui. Quisque rhoncus nibh in massa pretium
61 scelerisque.
62 </p>
63 <p>
64 Lorem ipsum dolor sit amet, consectetur adipiscing elit. In luctus, ex
65 eu sagittis faucibus, ligula ipsum sagittis magna, et imperdiet dolor
66 lectus eu libero. Vestibulum venenatis eget turpis sed faucibus.
67 Maecenas in ullamcorper orci, eu ullamcorper sem. Etiam elit ante,
68 luctus non ante sit amet, sodales vulputate odio. Aenean tristique
69 nisl tellus, sit amet fringilla nisl volutpat cursus. Quisque
70 dignissim lectus ac nunc consectetur mattis. Proin vel hendrerit
71 ipsum, et lobortis dolor. Vestibulum convallis, nibh et tincidunt
72 tristique, nisl risus facilisis lectus, ut interdum orci nisl ac nunc.
73 Cras et aliquam felis. Quisque vel ipsum at elit sodales posuere eget
74 non est. Fusce convallis vestibulum dolor non volutpat. Vivamus
75 vestibulum quam ut ultricies pretium.
76 </p>
77 <p>
78 Suspendisse rhoncus fringilla nisl. Mauris eget lorem ac urna
79 consectetur convallis non vel mi. Donec libero dolor, volutpat ut urna
80 sit amet, aliquet molestie purus. Phasellus faucibus, leo vel
81 scelerisque lobortis, ipsum leo sollicitudin metus, eget sagittis ante
82 orci eu ipsum. Nulla ac mauris eu risus sagittis scelerisque iaculis
83 bibendum mauris. Cras ut egestas orci. Cras odio risus, sagittis ut
84 nunc vitae, aliquam consectetur purus. Vivamus ornare nunc vel tellus
85 facilisis, quis dictum elit tincidunt. Donec accumsan nisi at laoreet
86 sodales. Cras at ullamcorper massa. Maecenas at facilisis ex. Nam
87 mollis dignissim purus id efficitur.
88 </p>
89 <p>
90 Curabitur eget aliquam erat. Curabitur a neque vitae purus volutpat
91 elementum. Vivamus quis vestibulum leo, efficitur ullamcorper velit.
92 Integer tincidunt finibus metus vel porta. Mauris sed mauris congue,
93 pretium est nec, malesuada purus. Nulla hendrerit consectetur arcu et
94 lacinia. Suspendisse augue justo, convallis eget arcu in, pretium
95 tempor ligula. Nullam vulputate tincidunt est ut ullamcorper.
96 </p>
97 <p>
98 Curabitur sed sodales leo. Nulla facilisi. Etiam condimentum, nisi id
99 tempor vulputate, nisi justo cursus justo, pellentesque condimentum
100 diam arcu sit amet leo. Cum sociis natoque penatibus et magnis dis
101 parturient montes, nascetur ridiculus mus. In placerat tellus a
102 posuere vehicula. Donec diam massa, efficitur vitae mattis et, pretium
103 in augue. Fusce iaculis mi quis ante venenatis, sit amet pellentesque
104 orci aliquam. Vestibulum elementum posuere vehicula.
105 </p>
106 <p>
107 Sed tincidunt diam a massa pharetra faucibus. Praesent condimentum id
108 arcu nec fringilla. Maecenas faucibus, ante et venenatis interdum,
109 erat mi eleifend dui, at convallis nisl est nec arcu. Duis vitae arcu
110 rhoncus, faucibus magna ut, tempus metus. Cras in nibh sed ipsum
111 consequat rhoncus. Proin fringilla nulla ut augue tempor fermentum.
112 Nunc hendrerit non nisi vitae finibus. Donec eget ornare libero.
113 Aliquam auctor erat enim, a semper risus semper at. In ut dui in metus
114 tincidunt euismod eget et lacus. Aenean et dictum urna, sed rhoncus
115 lorem. Duis pharetra sagittis odio. Etiam a libero ut nisi feugiat
116 tincidunt vel vitae turpis. Maecenas vel orci sit amet lorem hendrerit
117 venenatis sollicitudin ut dui. Quisque rhoncus nibh in massa pretium
118 scelerisque.
119 </p>
120 </div>
121 </div>
122 <div class="swiper-scrollbar"></div>
123 <!-- 竖直滑动,就像阅读文档一样 -->
124 </div>
125 </template>
126 <script>
127 import Swiper from "swiper/swiper-bundle.min.js";
128 import "swiper/swiper-bundle.min.css";
129 export default {
130 components: {},
131 methods: {},
132 mounted() {
133 this.$nextTick(() => {
134 // 创建swiper对象
135 const swiper = new Swiper(".mySwiper", {
136 direction: "vertical", // 控制滑动的方向,可设置为水平方向切换(horizontal)或垂直方向切换(vertical)。
137 slidesPerView: "auto", // 允许滚动容器同时显示
138 freeMode: true, // 开启这个就会有惯性滚动swiper-slide数量
139 scrollbar: {
140 el: ".swiper-scrollbar", // 增加滚动条
141 },
142 mousewheel: true,
143 });
144 });
145 },
146 };
147 </script>
148
149 <style lang="scss" scoped>
150 html,
151 body {
152 position: relative;
153 height: 100%;
154 }
155
156 body {
157 background: #eee;
158 font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
159 font-size: 14px;
160 color: #000;
161 margin: 0;
162 padding: 0;
163 }
164
165 html,
166 body {
167 position: relative;
168 height: 100%;
169 }
170
171 body {
172 background: #fff;
173 }
174
175 .swiper {
176 width: 100%;
177 height: 500px;
178 }
179
180 .swiper-slide {
181 font-size: 18px;
182 height: auto;
183 -webkit-box-sizing: border-box;
184 box-sizing: border-box;
185 padding: 30px;
186 }
187 </style>