MyApp.Base = function () {
}
var basePrototype = MyApp.Base["prototype"];
//对象克隆方法
basePrototype["Clone"] = function (myObj) {
if (typeof (myObj) != 'object') return myObj;
if (myObj == null) return myObj; var myNewObj = new Object(); for (var i in myObj)
myNewObj[i] = this.Clone(myObj[i]); return myNewObj;
}
//页面导航方法
basePrototype["Navigate"]=function(url)
{
window.location.href = url;
}
//页面导航方法
basePrototype["NavigateTag"] = function (tag) {
switch (tag) {
case "myHome":
this.Navigate(bootPATH + "app/html/myhome.html");
break;
case "zone":
this.Navigate(bootPATH + "app/html/header_sample.html");
break;
}
} basePrototype["SetSession"] = function (keyname, keyvalue) {
var Days = 30;
var exp = new Date();
exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000);
document.cookie = keyname + "=" + escape(keyvalue) + ";expires=" + exp.toGMTString();
}
basePrototype["GetSession"] = function (keyname) {
var aCookie = document.cookie.split("; ");
var lastMatch = null;
for (var i = 0; i < aCookie.length; i++) {
var aCrumb = aCookie[i].split("=");
if (keyname == aCrumb[0]) {
lastMatch = aCrumb;
}
}
if (lastMatch) {
var v = lastMatch[1];
if (v === undefined) return v;
return unescape(v);
}
return null;
}
basePrototype["ClearSession"] = function (keyname) {
if (keyname == "") {
window.localStorage.clear();
}
else {
document.cookie = null;
}
}
basePrototype["Extend"] = function (subClass, superClass) {
var F = function () { }; F.prototype = superClass.prototype; subClass.prototype = new F(); subClass.prototype.constructor = subClass; subClass.superclass = superClass.prototype; //加多了个属性指向父类本身以便调用父类函数 if (superClass.prototype.constructor == Object.prototype.constructor) { superClass.prototype.constructor = superClass; }
};
//定义全局的Base类对象
var MyAppBase = new MyApp.Base();

用法如下:

//设置Session
MyAppBase.SetSession("Username", "wahaha");
//如果设置的是一个实体类,则需要用JSON.stringify把实体转化为Json字符串保存
MyAppBase.SetSession("User", JSON.stringify(UserItem)); //获取Session
MyAppBase.GetSession("Username");
//用JSON.parse把Json字符串转化为实体
JSON.parse(MyAppBase.GetSession("User")); //跳转页面
MyAppBase.Navigate(bootPATH + "app/html/cctvlist.html"); //继承类
MyAppBase.Extend(ChildClass , ParentClass);

Js 的常用方法:页面跳转,Session,类继承的更多相关文章

  1. Asp.net页面跳转Session丢失问题

    原本去年在做项目时,写好的一记篇博客分享给大家. Asp.net页面跳转Session丢失问题   编写人:CC阿爸 2014-4-2 l  近来在做泛微OA与公司自行开发的系统集成登录的问题.在使用 ...

  2. js关闭当前页面跳转新页面

    页面代码: <p class="info"><span style="font-weight: bold">所属项目:</span ...

  3. js如何实现页面跳转(大全)

    js如何实现页面跳转(大全) 一.总结 一句话总结: 1.location的href属性: js跳转主要是通过window的location对象的href属性,因为location对象本来就是表示的浏 ...

  4. JS打开新页面跳转

      有时候使用js进行页面跳转,想使用 a 标签中 target="_blank" 形式,跳转打开一个新的页面. 可以使用以下脚本,创建一个 a标签,然后模拟点击操作. 代码如下: ...

  5. js中实现页面跳转

    1.在本页中跳转到指定页面 1.window.location.href方式    <script language="javascript" type="text ...

  6. js中实现页面跳转(返回前一页、后一页)

    一:JS 重载页面,本地刷新,返回上一页 代码如下: <a href="javascript:history.go(-1)">返回上一页</a> <a ...

  7. PHP JS HTML ASP页面跳转代码 延时跳转代码 返回到上一界面并刷新 JS弹出指定大小的新窗口

    1.PHP延时跳转代码 //跳转到浏览界面 header("Refresh:1;url=machine_list.php"); //不延时 <?php header(&quo ...

  8. js实现静态页面跳转传参

    最近有个项目: 存静态web服务,一个新闻页面列表出所有新闻摘要信息,然后通过点击新闻详情访问到该新闻的详情页面: 新闻展示的页面通过ajax请求接口获取到新闻的摘要信息,预计想通过id的方式访问到新 ...

  9. PHP JS HTML ASP页面跳转代码 延时跳转代码

    1.PHP延时跳转代码 //跳转到浏览界面 header("Refresh:1;url=machine_list.php"); //不延时 <?php header(&quo ...

  10. 在页面跳转的时候,在跳转后的页面中使用js 获取到 页面跳转的url中携带的参数。

    common.js代码 //获取URL中的参数..等等function getQueryString(name){var reg = new RegExp("(^|&)"+ ...

随机推荐

  1. bzoj3172

    这里学习AC自动机其实对KMP和trie掌握好了之后很容易扩展成AC自动机的这里运用了一个性质由失配指针反向可以建成一棵fail树x串在y串中的出现的次数即为在fail树上以x结尾节点为根的子树中有多 ...

  2. [pod install] error: cannot open .git/FETCH_HEAD: Permission denied

    pod installAnalyzing dependencies[!] Pod::Executable pull error: cannot open .git/FETCH_HEAD: Permis ...

  3. 【Android 开源】:最火的Android开源项目 第02期

    21. drag-sort-listview DragSortListView(DSLV)是Android ListView的一个扩展,支持拖拽排序和左右滑动删除功能.重写了TouchIntercep ...

  4. 动态规划(DP计数):HDU 5117 Fluorescent

    Matt, a famous adventurer who once defeated a pack of dire wolves alone, found a lost court. Matt fi ...

  5. android学习之BUG——The connection to adb is down, and a severe error has occured.

    开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选&qu ...

  6. java 正则表达式去除标点符号

      public class Test { public static void main(String[] args) { String str = "!!!??!!!!%*)%¥!KTV ...

  7. 切换Oracle数据库实例

    如果多个实例,需要切换可以采用以下命令: export ORACLE_SID=SID

  8. Java Stream 使用详解

    Stream是 Java 8新增加的类,用来补充集合类. Stream代表数据流,流中的数据元素的数量可能是有限的,也可能是无限的. Stream和其它集合类的区别在于:其它集合类主要关注与有限数量的 ...

  9. 8-7-Exercise

    链接:第二次小练 这次是我们这组出的题目~我出了一道......B-Prison rearrangement,感觉有点复杂~不过其实题目想通了还是很简单的...... @荆红浅醉出的是A.C.D,@从 ...

  10. idea静态数据加载失败的解决办法

     把上图中的resource文件夹(存放xml等配置文件)标记成resource.