百度前端技术学院2015JavaScript基础部分-BOM
5.1 任务描述
实现以下函数
// 判断是否为IE浏览器,返回-1或者版本号
function isIE() {
// your implement
} // 设置cookie
function setCookie(cookieName, cookieValue, expiredays) {
// your implement
} // 获取cookie值
function getCookie(cookieName) {
// your implement
}
1.判断是否为IE浏览器,则需要利用ie仅有的属性,ActiveXObject,在ie10之前,直接利用window.ActiveXObeject进行判断,但是在ie11出现后,则出现了异常,要想兼容所有的IE浏览器,可以用return (ActiveXObject in window); 在客户端浏览器检测中最重要的对象是navigator对象,navigator对象是最早实现的BOM对象之一。它包含一些浏览器信息的属性,比如名称,版本号,平台。userAgent 属性是一个只读的字符串,声明了浏览器用于 HTTP 请求的用户代理头的值。一般来讲,它是在 navigator.appCodeName 的值之后加上斜线和 navigator.appVersion 的值构成的。例如:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)。我们需要的版本号就是字符串的第10位到11位之间的字符串。
// 判断是否为IE浏览器,返回-1或者版本号
//兼容IE10和IE11
function isIE() {
// your implement
if("ActiveXObeject" in window) {
return navigator.userAgent.slice(,);
}
else{
return -;
};
}
2.cookie是用来保存用户的个人信息,比如用户的用户名和登录密码之类的,可以方便用户,cookie有多个参数,设置cookie的名称和值,必需,一次只能设置一个。其他的都是可选的,利用doucument.cookie可以存储cookie。代码实现如下:
// 设置cookie
function setCookie(cookieName, cookieValue, expiredays) {
// your implement
document.cookie = cookieName + "=" +cookieValue + ";expires=" + expiredays;
}
3.获取cookie的名称获取cookie值,首先可以把cookie存储信息的字符串,转化成一个数组,这样就能够让每个对键值放在一起,方便第二次操作。然后在对数组进行分隔,如果发现数组的第一个值与我们要想获得的值一致的话,那么该数组的第二个元素就是我们想要的值。代码如下:
// 获取cookie值
function getCookie(cookieName) {
// your implement
var cookie = document.cookie.split(";");
each(cookie,function(item,index){
if (trim(item.split("=")[0] == cookieName) {
return item.split("=")[1];
}
})
}
参考资料:http://www.itxueyuan.org/view/6375.html
百度前端技术学院2015JavaScript基础部分-BOM的更多相关文章
- 百度前端技术学院2015JavaScript基础部分代码实现
2. JavaScript数据类型及语言基础(一) 2.1 任务描述 创建一个JavaScript文件,比如util.js: 实践判断各种数据类型的方法,并在util.js中实现以下方法: / ...
- 百度前端技术学院2015JavaScript基础部分实现自己的小型jQuery
// 实现一个简单的Query function $(selector) { ); if (firstChar == "#") { var len = selector.split ...
- 百度前端技术学院-基础-day1
2020.9.14 今天我开始在百度前端技术学院学习基础课程. 先立一个Flag,希望我能在30天之内学完前四十天的课程,后续课程再一天一节. 第一天的内容主要是提供了很多基础学习的网页,比如W3sc ...
- 百度前端技术学院(IFE)2016春季学期总结
今天(5月16日)作为第八个提交者提交了任务五十:RIA微型问卷管理平台 这样一个综合性的大任务,宣告我的IFE春季学期课程学习顺利完成.其实任务五十并不复杂,现在再让我来做,可能一周不到就写出来了, ...
- 百度前端技术学院—-小薇学院(HTML+CSS课程任务)
任务一:零基础HTML编码 课程概述 作业提交截止时间:04-24 重要说明 百度前端技术学院的课程任务是由百度前端工程师专为对前端不同掌握程度的同学设计.我们尽力保证课程内容的质量以及学习难度的合理 ...
- 百度前端技术学院task1.10
任务十:Flexbox 布局练习 面向人群: 有一定HTML及CSS基础的同学 难度: 中 重要说明 百度前端技术学院的课程任务是由百度前端工程师专为对前端不同掌握程度的同学设计.我们尽力保证课程内容 ...
- 通过Github Pages在线查看百度前端技术学院完成的任务成果
前言 .note-content {font-family: "Helvetica Neue", Arial, "Hiragino Sans GB", STHe ...
- 百度前端技术学院-task1.3源代码
因为其中有图片,所以就给有图片的位置加了边框和设置了大小,这样哪怕图片不显示也可以知道在哪里. <!DOCTYPE html> <html> <head> < ...
- 百度前端技术学院-基础-day2
2020.9.15 今天是学习前端基础技术的第二天,今天制作了一个在线简历,纯html的那种.帮助我复习了以前的基础知识,也增加了新的知识点,比如制作列表可以用fieldset来整合数据. 我的在线简 ...
随机推荐
- TLD目标跟踪算法
1. 简介 TLD目标跟踪算法是Tracking-Learning-Detection算法的简称.这个视频跟踪算法框架由英国萨里大学的一个捷克籍博士生Zdenek Kalal提出.TLD将传统的视频跟 ...
- Kinect外包团队(长年承接微软Kinect体感项目外包,有大型Kinect案例)
承接Kinect体感企业项目.游戏项目外包 北京公司.专业团队,成员为专业WPF产品公司一线开发人员,有大型产品开发经验: 提供优质的售后服务,保证产品质量,轻量级产品可以提供规范清晰的源代码,有业务 ...
- an interview question(3)
最近看了些C面试题顺便复习一下C语言,现贴一些出来和大家分享. #include <stdio.h> void main () { ,,,,};--------- *(ptr++)+=; ...
- hdu4449Building Design(三维凸包+平面旋转)
链接 看了几小时也没看懂代码表示的何意..无奈下来问问考研舍友. 还是考研舍友比较靠谱,分分钟解决了我的疑问. 可能三维的东西在纸面上真的不好表示,网上没有形象的题解,只有简单"明了&quo ...
- 转:Eclipse快捷键 10个最有用的快捷键
Eclipse快捷键 10个最有用的快捷键 Eclipse中10个最有用的快捷键组合 一个Eclipse骨灰级开发者总结了他认为最有用但又不太为人所知的快捷键组合.通过这些组合可以更加容易的浏览源代 ...
- Spring官网下载dist.zip的几种方法
Spring官网下载dist.zip的几种方法 Spring官网改版后,很多项目的完整zip包下载链接已经隐掉了,虽然Spring旨在引导大家用更“高大上”的maven方式来管理所依赖的jar包, ...
- IO流中SequenceInputStream类
SequenceInputStream类: 不断的读取InputStream流对象,对于使用Enumeration对象的情况,该类将持续读取所有InputStream对象中的内容,直到到达最后一个In ...
- Redis ConnectionException
JAVA 远程链接Redis服务失败,错误信息如下: redis.clients.jedis.exceptions.JedisConnectionException: Could not get a ...
- 【Fiddler】改写返回数据功能
方法一:打断点 1.在手机上设置好代理后,随便进入一个APP:之后选择Rules->Automatic Breakpoints->After Responses,在返回值处打断点 2.重新 ...
- 输入scanner,if-else
import java.util.Scanner; public class Job{ public static void main(String[] args){ Scanner scanner ...