我有一个使用jquerymobile + phonegap创建的移动应用。 Android版本效果很好。我为iOS版本使用了相同的html + css + javascript文件。当我在XCode iPhone 6.0模拟器中运行应用程序时,所有jquery移动元素都没有样式化,而对于带有搜索的列表视图,搜索不起作用。好像jquery移动插件没有运行。
我使用ajax加载内容,然后在父页面元素上触发'create'。
这是index.html页面的一部分。在页面的头部,我加载了jquery,jquery mobile js和css:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="format-detection" content="telephone=no" />
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=medium-dpi" />
<link rel="stylesheet" type="text/css" href="css/themes/mobiletheme.min.css" />
<link rel="stylesheet" type="text/css" href="css/jquery.mobile.structure-1.2.0.min.css" />
<title>App Name</title>
<script type="text/javascript" src="cordova-2.3.0.js"></script>
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript" src="js/myown.js"></script>
<script type="text/javascript" src="js/jquery.mobile-1.2.0.min.js"></script>
<script type="text/javascript" src="js/index.js"></script>
<script type="text/javascript">
app.initialize();
</script>
</head>
<body>
<div data-role="page" id="thepage">
<div data-role="header">Header code here</div>
<div data-role="content" id="thecontent">
Content is loaded here using ajax
</div>
<div data-role="footer">Footer code here</div>
</div>
</body>
这是javascript的一部分,它使用ajax加载内容并触发create:
$.ajax({
url: 'http://www.thedomain.com/thepage.php',
dataType: 'html',
type: 'GET',
success:function(data, textStatus, xhr){
$("#thecontent").html(data);
$("#thepage").trigger('create');
}
});
这适用于Android。但在iOS中,就好像触发器('create')什么也没做。
有没有人经历过这样的事情?关于如何解决它的任何想法将非常感激。
感谢。