我在jQueryMobile页面上使用Swiper by idangero.us。
我的HTML文件包含两个"页面"。其中一个应该有一个图像库。它可以很好地查看图像,滑块是功能的,没有jQueryMobile。但是一旦我使用jQueryMobile,图像就不再出现了。
我发现的最类似的问题是:Swiper not working in Jquery Mobile 但它并没有帮助我找到解决方案。有人可以向我解释为什么这不起作用吗?
这是我的HTML:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="css/idangerous.swiper.css">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.css" />
<style>
/* Demo Styles */
html {
height: 100%;
}
body {
margin: 0;
font-family: Arial, Helvetica, sans-serif;
font-size: 13px;
line-height: 1.5;
position: relative;
height: 100%;
}
.swiper-container {
width: 100%;
height: 100%;
color: #fff;
text-align: center;
}
.swiper-slide .title {
font-style: italic;
font-size: 42px;
margin-top: 80px;
margin-bottom: 0;
line-height: 45px;
}
.pagination {
position: absolute;
z-index: 20;
left: 10px;
bottom: 10px;
}
.swiper-pagination-switch {
display: inline-block;
width: 8px;
height: 8px;
border-radius: 8px;
background: #222;
margin-right: 5px;
opacity: 0.8;
border: 1px solid #fff;
cursor: pointer;
}
.swiper-visible-switch {
background: #aaa;
}
.swiper-active-switch {
background: #fff;
}
</style>
</head>
<body>
<!-- Start page-->
<div data-role="page" id="page_start">
<article data-role="content">
<ul data-role="listview" data-inset="true" >
<li>
<a href="#page2">
<h1>Cabmontering</h1>
<img src="favicon.ico" alt="Min Pin" />
<p></p>
</a>
</li>
</ul>
</article>
</div> <!--End of startpage-->
<!--Page 2-->
<div data-role="page" id="page2">
<div class="swiper-container">
<div class="swiper-wrapper">
<div class="swiper-slide">
<img src="bilder/cabmontering/3_2.png" width="100%"/>
</div>
<div class="swiper-slide">
<img src="bilder/cabmontering/4_2.png" width="100%"/>
</div>
<div class="swiper-slide">
<img src="bilder/cabmontering/6_2.png" width="100%"/>
</div>
<div class="swiper-slide">
<img src="bilder/cabmontering/1.png" width="100%"/>
</div>
<div class="swiper-slide">
<img src="bilder/cabmontering/2.png" width="100%"/>
</div>
</div>
<div class="pagination"></div>
</div> <!--End of "swiper_wrapper"-->
</div> <!--End of page 2-->
<script src="js/jquery-1.10.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.js"></script>
<script src="js/idangerous.swiper-2.1.min.js"></script>
<script>
var mySwiper = new Swiper('.swiper-container',{
pagination: '.pagination',
paginationClickable: true,
loop: true
})
</script>
</body>
</html>
答案 0 :(得分:2)
该插件根本没有被初始化,您需要在pageshow
中包含滑动代码并且只需要一次.one()
。其次,将JS库放在head
。
<head>
<script src="js/jquery-1.10.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.js"></script>
<script src="js/idangerous.swiper-2.1.min.js"></script>
<script>
$(document).one("pageshow", "#page2", function () {
var mySwiper = new Swiper('.swiper-container',{
pagination: '.pagination',
paginationClickable: true,
loop: true
});
});
</script>
</head>