在使用JqueryMobile 1.2和PhoneGap / Cordova 2.2.0进行项目时我遇到了页面转换问题,当我使用时 data-transition =在一个元素上滑动它工作得非常慢'如果我使用data-transition = none我在屏幕之间得到黑色闪烁,我正在使用IOS 6.1在iphone 4上工作'我已经尝试了所有的答案我发现听到但没有当我使用data-transition =“none”
导航时,我仍然可以进行黑色闪烁我希望有人可以帮助我'听到代码:
<!doctype html>
<html>
<head>
<title> jQuery Mobile Boilerplate - Collapsibles Content</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- jQuery Mobile CSS bits -->
<link rel="stylesheet" href="css/jquery.mobile-1.2.0.min.css" />
<!-- if you have a custom theme, add it here -->
<link rel="stylesheet" href="themes/jQuery-Mobile-Boilerplate.css" />
<!-- Custom css -->
<link rel="stylesheet" href="css/custom.css" />
<!-- Javascript includes -->
<script src="js/jquery-1.8.2-min.js"></script>
<script src="js/mobileinit.js"></script>
<script src="js/jquery.mobile-1.2.0.min.js"></script>
<script src="js/application.js"></script>
</head>
<body>
<div data-role="page">
<div data-role="header">
<a href="../index.html" data-icon="home">Home</a>
<h1>Collapsible Content</h1>
</div>
<div data-role="content">
<h2>Collapsible Content Blocks</h2>
<div data-role="collapsible">
<h3>Content header</h3>
<p>I'm the content that shows/hides when you click the header just above me.</p>
</div>
<h2>Default to open</h2>
<div data-role="collapsible" data-collapsed="false">
<h3>Content header</h3>
<p>I'm the content that shows/hides when you click the header just above me.</p>
</div>
<h2>Themed</h2>
<div data-role="collapsible" data-content-theme="c">
<h3>Content header</h3>
<p>I'm the content that shows/hides when you click the header just above me.</p>
</div>
<h2>Themed - content only</h2>
<div data-role="collapsible" data-theme="b" data-content-theme="e" >
<h3>Content header</h3>
<p>I'm the content that shows/hides when you click the header just above me.</p>
</div>
<h2>Nested Collapsibles</h2>
<div data-role="collapsible" data-collapsed="false" data-theme="e" data-content-theme="c">
<h3>Outer header</h3>
<p>I'm the content inside the main collapsible.</p>
<div data-role="collapsible" data-theme="c" data-content-theme="c">
<h3>I'm a nested collapsible with a child collapsible</h3>
<p>I'm a child collapsible.</p>
<div data-role="collapsible" data-theme="d" data-content-theme="d">
<h3>Nested inside again.</h3>
<p>Three levels deep now.</p>
</div>
</div>
<div data-role="collapsible" data-content-theme="c">
<h3>Collapsed list</h3>
<ul data-role="listview" data-inset="true" data-theme="d">
<li><a href="index.html">red</a></li>
<li><a href="index.html">blue</a></li>
<li><a href="index.html">yellow</a></li>
</ul>
</div><!-- /section 3 -->
</div>
</div>
<div data-role="footer" data-theme="c">
<p>© 2012 - jQuery Mobile Boilerplate</p>
</div>
</div>
</body>
</html>
答案 0 :(得分:5)
尝试将其放入JS:
$(document).bind("mobileinit", function(){
$.mobile.defaultPageTransition = 'none';
$.mobile.pushStateEnabled = false;
});
答案 1 :(得分:5)
这是我的第一篇文章,所以我没有足够的声誉来评论,但我会尽力提供某种答案。
我正在努力解决同样的问题。在我看来,这是一个iOS 6问题,例如在iOS 5和我的Android 2.2+中没有闪烁。我使用$.mobile.defaultPageTransition = 'none';
。
尝试回答:
检查您的页面样式中是否有溢出-x:隐藏。当我在我的样式中删除“overflow-x:hidden”时,闪烁消失了,我想要在它们之间导航。
额外信息:
不幸的是,在我的情况下,因为我需要页面是原生的可滚动的,所以固定位置的页眉和页脚必须保持固定,而没有页面来获得iOS Webkit浏览器橡皮筋效果。“/ overflow-x:hidden”是必需的。
如果更改页面的背景颜色(例如红色),您可能会看到红色闪烁而不是黑色。这至少对我来说是这样的。这应该意味着它是页面背景z-index问题。 JQuery Mobile在早期版本中遇到了z-index和闪烁的问题。
我尝试做的另一件事是在调用$("#myPage").css('overflow-x', "");
之前删除当前页面中的{-1}}隐藏的overflow-x:隐藏到我导航到的页面。然后在pageshow事件中,我使用$.mobile.changePage([...]);
放回overflow-x。但这并没有解决问题。我没有橡皮筋效果,但背景仍然突然出现。
我希望这个答案和额外的信息可以帮助任何人使用例如Phonegap / Cordova在iOS 6上使用JQuery Mobile 1.2.0来解决这个新问题。
答案 2 :(得分:1)
目前暂时无法解决此问题。
我甚至读过一些IOS也有这个问题。
我知道android更糟糕。但是我不是“MAC”用户,所以我不能测试100%。虽然我知道虽然Iphone用户对这个问题有很多疑问。
Android + Jquery Mobile就是这个问题的主题。
Page Transitions按照预期在android上运行,有页面闪烁,双闪烁等等。即使您关闭过渡,您仍然可以获得网站从旧时代开始的旧“闪烁”。
有些人“报告说他们已将其修复了50%”,但这些解决方案非常个性化,并且根本不适用于所有人。
我不觉得我想给你一半答案,我宁愿告诉你Jquery Mobile正在开发中,如果我在哪里,我会等待它:)
我希望我的回答能为您提供所需的想法:)