0

我正在使用 JQM 1.1.0 和 Cordova 1.5.0。

我有这样的代码

<!DOCTYPE HTML>
<html>
<head>
<title>Index Page</title>

<!-- Adding viewport -->
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    
<meta name="viewport" content="width=device-width, initial-scale=1">

<!-- Adding Phonegap scripts -->
<script type="text/javascript" charset="utf-8"
src="cordova/cordova-1.5.0.js"></script>

<!-- Adding jQuery mobile and jQuery scripts & CSS -->
<script type="text/javascript" src="jquery/jquery-1.7.1.min.js"></script>
<link rel="stylesheet"
href="jquerymobile/jquery.mobile-1.1.0-rc.1.min.css" />
<script type="text/javascript" src="jquery/jquery.validate.min.js"></script>
<script type="text/javascript"
src="jquerymobile/jquery.mobile-1.1.0-rc.1.min.js"></script>
<link rel="stylesheet" href="css/colors.css">

<script type="text/javascript">

$("#page1").live("pageinit", function(e) {
console.log("pageinit1");
    }

$("#page2").live("pageinit", function(e) {
console.log("pageinit2");
    }
</script>
<body>
<div data-role="page" id="page1">
  <div data-role="header">Page 1</div>
  <div data-role="content"></div>
</div>

<div data-role="page" id="page2">
  <div data-role="header">Page 2</div>
  <div data-role="content"></div>
</div>
</body>

此代码适用于 Android。但是在iOS中,一旦页面加载,page1的pageinit事件就不会被触发,稍后如果我将page更改为page2,那么一切都很好。为什么会这样?

4

2 回答 2

1

我不太确定,但据我所知,JQ1.7.x 中的 live 函数发生了变化,现在你将不得不使用 on() 函数,它对你的代码编码方式有一些小的改变..

于 2012-04-05T06:02:49.437 回答
0

我只需要在 data-role="page" 之后编写我的 javaScript 函数以使其工作......

于 2012-04-06T19:10:42.353 回答