>  기사  >  웹 프론트엔드  >  jQuery 모바일 웹 개발에서 페이지 점프 및 외부 페이지 로드 구현_jquery

jQuery 모바일 웹 개발에서 페이지 점프 및 외부 페이지 로드 구현_jquery

WBOY
WBOY원래의
2016-05-16 15:27:221451검색

changePage() 페이지 점프

jQuery.mobile.changePage( to [, options ] )

한 페이지에서 다른 페이지로 이동하려면 $.mobile 개체의changePage 메서드를 사용하세요. 하지만 이 방법을 사용하려면 링크를 클릭하거나 양식을 제출해야 합니다. 이 메소드에는 두 개의 매개변수가 있습니다.

to: 첫 번째 매개변수이며 필요하고 필수입니다. 유형: 문자열 또는 개체.

문자열: 절대 또는 상대 URL 주소입니다. 예: ("about/us.html")

객체:
($("#about"))과 같은 jquery 선택기 개체입니다.
알려진 페이지로 이동하는 데 사용되는 두 개의 페이지 참조를 지정하는 배열 [from, to]는 현재 표시되는 페이지(또는 $.mobile.activePage)입니다.
({대상: url, 데이터: 직렬화된 양식 데이터, 유형: "get" 또는 "post"}와 같은 양식 데이터를 보내는 개체입니다.

options: 두 번째 매개변수이며 선택사항입니다. 유형: 객체

allowSamePageTransition(부울, 기본값: false)
기본적으로 ChangePage()는 이미 활성화된 페이지로 이동하라는 요청을 무시합니다. true로 설정하면 실행됩니다. 개발자는 일부 페이지 전환에서 페이지 이동 요청의 소스 페이지와 대상 페이지가 다르다고 가정하므로 전환 애니메이션이 없다는 점에 유의해야 합니다.

changeHash(부울, 기본값: true)
주소 표시줄 해시를 업데이트해야 하는지 여부를 결정합니다.

데이터(문자열 또는 개체, 기본값: 정의되지 않음)
ajax 요청을 통해 전송되는 데이터는 ChangePage()의 to 매개변수가 주소인 경우에만 사용할 수 있습니다.

dataUrl(문자열, 기본값: 정의되지 않음)
페이지 변환이 완료되면 브라우저 주소의 URL 주소가 업데이트됩니다. 지정하지 않으면 페이지의 data-url 속성 값이 사용됩니다.

pageContainer(jQuery 선택기, 기본값: $.mobile.pageContainer)는 페이지를 포함해야 하는 컨테이너를 지정합니다.

reloadPage(부울, 기본값: false)
페이지 컨테이너의 DOM 요소가 준비된 경우에도 페이지를 강제로 새로 고칩니다. ChangePage()의 to 매개변수가 주소인 경우에만 사용할 수 있습니다.

reverse(부울, 기본값: false)
페이지 전환 애니메이션의 방향을 설정합니다. true로 설정하면 반대 방향으로 전환됩니다.

역할(문자열, 기본값: 정의되지 않음)
페이지를 표시할 때 data-role 값을 사용하세요. 기본적으로 이 매개변수는 정의되지 않습니다. 즉, 요소의 @data-role 속성에 따라 달라집니다.

showLoadMsg(부울값, 기본값: true) 외부 페이지 로딩 시 로딩 정보 표시 여부를 설정합니다.

transition (문자열, 기본값: $.mobile.defaultPageTransition) 표시된 페이지를 사용할 때 전환됩니다.

유형(문자열, 기본값: get)
페이지를 요청할 때 사용되는 방법("get" 또는 "post")을 지정합니다. ChangePage()의 to 매개변수가 주소인 경우에만 사용할 수 있습니다.

//以slideup效果 跳转到 "about us" 页面

$.mobile.changePage("about/us.html", "slideup"); 
//以pop效果 跳转到 "confirm" 页面 并且在url hash里不记录其历史

$.mobile.changePage("../alerts/confirm.html", "pop", false, false); 
//跳转到 "search results" 页面,提交id为 "search"的表单数据

$.mobile.changePage({url:"searchresults.php" , type:"get" , data: $("form#search").serialize() }); 
//将页面url,类型,数据定义为变量来传递。

var pageData = { url: formresults.php, type: 'get', data:$('form#myform').serialize () };

$.mobile.changePage(pageData);
//使用changepage来加载第三个页面

var previousPage = $.mobile.activePage.data ('ui.prevPage');

$.mobile.changePage([previousPage, anotherPreviousPage], 'pop');


loadPage()는 외부 페이지를 로드합니다

jQuery.mobile.loadPage( url [, options ] )

加载一个外部页面,附加其内容,并将其插入到DOM

url:是第一个参数。是必须的。类型:字符串或者对象。

options:第二个参数。是可选的。类型:对象。

allowSamePageTransition (default: false)
类型:布尔值
默认情况下,changepage()忽略请求改变当前页面。这个选项设置为true,允许请求执行。开发人员应该注意的一些网页过渡假设一个changepage请求设置FromPage、ToPage是不同的,所以他们可能不会如预期的动画。开发人员负责提供适当的过渡,或关闭这个特定的情况下。

changeHash (default: true)
类型:布尔值
如果地址栏中的哈希值应更新

data (default: undefined)
类型:数据或者字符串
要发送的数据与一个AJAX页面请求

loadMsgDelay (default: 50)
类型:数字
被迫延迟(毫秒)显示之前加载信息。这是为了让一个页面已经访问了被从缓存中取得没有加载信息的时间

pageContainer (default: $.mobile.pageContainer)
类型:jQuery选择器
指定要包含的页面元素

reloadPage (default: false)
类型:布尔值
强制刷新页面, 即使当页面容器中的dom元素已经准备好时,也强制刷新。只在changePage() 的 to 参数 是一个地址的时候可用。

role (default: undefined)
类型:字符串
显示页面的时候使用data-role值。默认情况下此参数为认:undefined,依赖于元素的@data-role属性。

showLoadMsg (default: true)
类型:布尔值
加载外部页面时,设定是否显示loading信息。

transition (default: $.mobile.defaultPageTransition)
类型:字符串
使用显示的页面时,过渡

type (default: "get")
类型:字符串
指定页面请求的时候使用的方法("get" 或者 "post")。只在changePage() 的 to 参数 是一个地址的时候可用。

加载一个外部页面,提高其内容,并将其插入到DOM。这种方法被称为内部的changepage()功能时,它的第一个参数是一个URL。这个函数不影响当前页面可以在后台加载页面。该函数返回一个对象,获取延期承诺在该页被增强,插入到文档中的解决。
加载“about/us.html”的页面到DOM

<!doctype html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <meta name="viewport" content="width=device-width, initial-scale=1">
 <title>jQuery.mobile.loadPage demo</title>
 <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.css">
 <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
 <!-- The script below can be omitted -->
 <script src="/resources/turnOffPushState.js"></script>
 <script src="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.js"></script>
</head>
<body>
 
<div data-role="page">
 
 <div></div>
 
</div>
<script>
$.mobile.loadPage( "about/us.html" );
</script>
 
</body>
</html>

 

加载一个“searchresults.php”页,要发送的表单数据是“search”字符。

<!doctype html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <meta name="viewport" content="width=device-width, initial-scale=1">
 <title>jQuery.mobile.loadPage demo</title>
 <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.css">
 <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
 <!-- The script below can be omitted -->
 <script src="/resources/turnOffPushState.js"></script>
 <script src="http://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.js"></script>
</head>
<body>
 
<div data-role="page">
 
 <div></div>
 
</div>
<script>
$.mobile.loadPage( "searchresults.php", {
 type: "post",
 data: $( "form#search" ).serialize()
});
</script>
 
</body>
</html>

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.