Uel*_*eli 20 webkit android-browser jquery-mobile css-transitions
我在使用jQuery Mobile Application时遇到了一个大问题:我正在使用自定义函数(它们由onClick触发)来切换页面和currentPage.
它只发生在使用集成浏览器更改(由于ajax请求)的站点上的Android设备上.iOS和Chrome效果很好.
单击元素后,动画开始但在结束之前,它会切换回旧页面.半秒后,它切换回新的.
我在这里制作了一个错误的电影:http://www.youtube.com/watch?v = sXxvVUxniNg
非常感谢你
代码(CoffeeScript):
class Guide
@categoriesLoaded = false
@loadSearch: ->
$.mobile.changePage $("#guide"),
transition: 'slide'
changeHash: false
if !@categoriesLoaded
@categoriesLoaded = true
GuideApi.getCategories (data) ->
output = Mustache.render $("#tmpl-guide-categories-select").html(),
categories: data
$("#guide-search-category").append output
$("#guide-search-category").val($("#guide-search-category option:first").val());
window.WgSwitchGuide = ->
Guide.loadSearch
Run Code Online (Sandbox Code Playgroud)
小智 10
我遇到了同样的问题.我尝试了一切,最后以解决方案结束.我发现错误主要是在浏览器中.所以我将pushStateEnabled的配置设置为false.我通过执行以下操作,添加此脚本.
<script type="text/javascript">
$(document).bind("mobileinit", function(){
$.mobile.pushStateEnabled = false;
});
</script>
Run Code Online (Sandbox Code Playgroud)
它应该在调用jquery-mobile脚本之前添加,有关更多信息,您可以在JQuery描述中看到它
它解决了问题不再跳回来.
我在 android 和 ios 上都遇到了完全相同的问题。对我来说,这种情况发生在重型页面上,即具有复杂元素的页面等。看起来您正在使用“幻灯片”过渡,这也是我正在使用的。删除这些页面的页面转换(即 $.mobile.changePage("page.html", {transition: "none" }))为我解决了这个问题。希望这可以帮助。
如果您想保留过渡,可以尝试在显示上一页时先使用 $.mobile.loadPage 预加载页面,然后再显示过渡。我自己正在探索这条路线,但可能值得尝试。
编辑:好的 - 我探索了最后一个建议,但这似乎不起作用。将坚持第一个选项。
| 归档时间: |
|
| 查看次数: |
7540 次 |
| 最近记录: |