惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
N
Netflix TechBlog - Medium
宝玉的分享
宝玉的分享
Google DeepMind News
Google DeepMind News
腾讯CDC
G
Google Developers Blog
Martin Fowler
Martin Fowler
Microsoft Security Blog
Microsoft Security Blog
Recent Announcements
Recent Announcements
爱范儿
爱范儿
Engineering at Meta
Engineering at Meta
Microsoft Azure Blog
Microsoft Azure Blog
A
About on SuperTechFans
aimingoo的专栏
aimingoo的专栏
有赞技术团队
有赞技术团队
Jina AI
Jina AI
人人都是产品经理
人人都是产品经理
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
M
MIT News - Artificial intelligence
罗磊的独立博客
博客园 - 三生石上(FineUI控件)
美团技术团队
WordPress大学
WordPress大学
阮一峰的网络日志
阮一峰的网络日志

博客园 - 文刀无尽

在Django 中更新mongodb的ListField字段 图片加到json中,提交到服务器端处理异常问题。 在django中使用时django-nonrel,'django.contrib.auth'不能用的问题 在mac 上安装 mpkg 在bluehost上安装mongodb Celery使用数据库代替rabbitmq 为什么要使用Rabbitmq 在bluehost上安装pytoh 2.7.2 为android 启动的时候添加splash 折腾了半天,ajax 在模拟器下正常,在一台2.1机器上正常,在我的小米2.3下不工作 去掉默认标题栏且将应用设置为全屏 java 基本语法 去掉jquery mobile 的阴影效果 Eclipse 的 javascript 插件 iphone phonegap中跨域的问题 使用jquery mobile 经验 另类随机读大表数据 (原创)自已实现服务器控件之 TextBox 控件 (原创)自已实现服务器控件系列 之 设计时可用鼠标拖动大小的Label控件
在jquery mobile中页面跳转的时候,实现登录检查
文刀无尽 · 2012-02-07 · via 博客园 - 文刀无尽

原因:实现功能的时候,存在有的页面需要登录,有的不需要登录。

实现的时候,就是期望在加载页面前,检查一下登录情况,这里有两个事件

 pagebeforechange 和 pagebeforeshow

 用pagebeforeshow的话,如果需要登录,会先到目标页,然后再跳转到登录页。

这里用pagebeforechange来实现需求。

下面是相关代码。

(function( $, window, undefined ) {

function queryStringToObject( qstr )

{

var result = {},

nvPairs = ( ( qstr || "" ).replace( /[^\?]*\?/, "" ).split( /&/ ) ),

i, pair, n, v;

for ( i = 0; i < nvPairs.length; i++ ) {

var pstr = nvPairs[ i ];

if ( pstr ) {

pair = pstr.split( /=/ );

n = pair[ 0 ];

v = pair[ 1 ];

if ( result[ n ] === undefined ) {

result[ n ] = v;

} else {

if ( typeof result[ n ] !== "object" ) {

result[ n ] = [ result[ n ] ];

}

result[ n ].push( v );

}

}

}

return result;

$( document ).bind( "pagebeforechange", function( e, data ) {

if ( typeof data.toPage === "string" ) {

var u = $.mobile.path.parseUrl( data.toPage );

params = queryStringToObject(u.hash);

if(params["nl"] != undefined) //在这里,我用nl参数表示需要登录如:#home?nl

{

if(在这里判断如果未登录)

{

data.toPage = u.hrefNoHash+"#login"; //跳到登录页

}

}

}

});

})( jQuery, window );