我昨天在我的代码jQuery Mobile中加载了因为我需要使用Swipe Event来完成一些工作。以下是我的脚本配置(所有脚本都在 body 关闭标记之前加载):
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.0.0/jquery.js" type="application/javascript"></script>
<script>window.jQuery || document.write('<script src="../js/jquery-3.0.0.min.js" type="application/javascript"><\/script>')</script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.js"></script>
<script type="application/javascript" src="../js/javascript.js" ></script>
我将以下代码放在 javascript.js (最后一个脚本)中,只是为了测试新的jQuery Mobile而且它没有用。
JAVASCRIPT / JQUERY
$j("body").on("swiperight", function(){
$j("#sidePanel").css("display","none");
});
此时,我做了一些调试,发现问题出现在jQuery 3中;如果我加载以前版本的jQuery(2或1),问题就不会出现。以下工作就像一个魅力:
<script src="https://code.jquery.com/jquery-2.2.4.js" integrity="sha256-iT6Q9iMJYuQiMWNd9lDyBUStIq/8PuOW33aOqmvFpqI=" crossorigin="anonymous" type="application/javascript"></script>
<script>window.jQuery || document.write('<script src="../js/jquery-2.2.4.js" type="application/javascript"><\/script>')</script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.js"></script>
<script type="application/javascript" src="../js/javascript.js" ></script>
问题:为什么滑动事件无法与jQuery 3一起使用?
提前谢谢。
答案 0 :(得分:2)
jQuery mobile需要“jQuery 1.8 - 1.11 / 2.1”。目前没有jQuery 3支持。
您可以使用jQuery Migrate Plugin作为解决方法。
<script src="https://code.jquery.com/jquery-3.0.0.js"></script>
<script src="https://code.jquery.com/jquery-migrate-3.0.0.js"></script>
<script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.js"></script>
<script type="application/javascript" src="../js/javascript.js" ></script>
答案 1 :(得分:0)
仅用于滑动事件,我建议使用此轻量级库:
Tocca.js
(大约5kb,并且与jquery.js 3.x兼容),而不是jQueryMobile(大约200 Kb,并且与jquery.js 3.x不兼容)。
此外,根本不需要使用jQuery。这是可选的。
易于实施且有据可查。查看一些示例: