gpt4 book ai didi

jquery - 在 jquery mobile 中向左滑动和向右滑动时触发两次?

转载 作者:行者123 更新时间:2023-12-01 05:52:56 26 4
gpt4 key购买 nike

我是 jQuery Mobile 新手。我使用滑动概念来滑动多个单独的 html 页面。当我从 swipepage3 转到 swipepage2 时它工作正常。 swipepage2 到 swipepage1 和 swipepage2 到 swipepage3,它会触发两次。如何解决这个问题?

这是我的代码:

Swipepage1.html

<!DOCTYPE html>
<html>
<head>
<title>Share QR</title>
<meta name="viewport" content="width=device-width,height=device-height,minimum-scale=1,maximum-scale=1"/>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.css" />
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.js"></script>
<script src="slide.js"></script>

</head>
<body>

<div data-role="page" id="article1">
<div data-role="header" data-theme="b" data-position="fixed" data-id="footer">
<h1>Countries</h1>
</div>
<div data-role="content" class="contentclass">
<p>Newyork</p>
<img src="img/newyork.jpg" style="height:460px;width:600px;"/>
</div>
<div data-role="footer" data-theme="b" data-position="fixed" data-id="footer">
<h1>Footer</h1>
</div>
</div>

</body>
</html>

Swipepage2.html

<!DOCTYPE html>
<html>
<head>
<title>Share QR</title>
<meta name="viewport" content="width=device-width,height=device-height,minimum-scale=1,maximum-scale=1"/>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.css" />
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.js"></script>

</head>
<body>

<div data-role="page" id="article2">
<div data-role="header" data-theme="b" data-position="fixed" data-id="footer">
<a href="swipepage1.html" data-icon="home" data-iconpos="notext">Home</a>
<h1>Countries</h1>
</div>
<div data-role="content" class="contentclass">
<p>Seoul</p>
<img src="img/seoul.jpg" style="height:460px;width:600px;"/>
</div>
<div data-role="footer" data-theme="b" data-position="fixed" data-id="footer">
<h1>Footer</h1>
</div>
</div>

</body>
</html>

Swipepage3.html

<!DOCTYPE html>
<html>
<head>
<title>Share QR</title>
<meta name="viewport" content="width=device-width,height=device-height,minimum-sca le=1,maximum-scale=1"/>
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.css" />
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.js"></script>


</head>

<body>

<div data-role="page" id="article3">
<div data-role="header" data-theme="b" data-position="fixed" data-id="footer">
<a href="swipepage1.html" data-icon="home" data-iconpos="notext">Home</a>
<h1>Countries</h1>
</div>
<div data-role="content" class="contentclass">
<p>Capetown</p>
<img src="img/capetown.jpg" style="height:460px;width:600px;"/>
</div>
<div data-role="footer" data-theme="b" data-position="fixed" data-id="footer">
<h1>Footer</h1>
</div>
</div>

</body>
</html>

slide.js

$(document).on('pagebeforecreate', function() {
$('#article1').bind('swipeleft', function(event,ui)
{
$.mobile.changePage("swipepage2.html", "slide");
});



$('#article2').bind('swipeleft', function(event,ui)
{
$.mobile.changePage("swipepage3.html","slide");
});

$('#article2').bind('swiperight', function()
{
$.mobile.changePage("swipepage1.html","slide");
});



$('#article3').bind('swiperight', function(event,ui)
{
$.mobile.changePage("swipepage2.html","slide");
});
});

最佳答案

这是因为页面的事件绑定(bind)了两次。

1.建议使用.on()代替.bind()我在 pagecreate/init/show 之外使用它,并且我没有遇到任何 .on 问题例如。

$('#article1').on('swipeleft', function(event,ui)
{
$.mobile.changePage("swipepage2.html", "slide");
});

关于jquery - 在 jquery mobile 中向左滑动和向右滑动时触发两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19448137/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com