zoukankan      html  css  js  c++  java
  • Bom

    Bom笼统的说就是专门操作浏览器API

    不同的浏览器的Bom也不同,但是有一些是大家都认可通用的。

    Bom底下最大的对象就是window,window扮演了两个角色

    1、替代global当做全局作用域对象
    2、封装了所有DOM和BOM的 API

    那么window底下有六个子对象

    history:浏览器的历史记录
    location:窗口的url 地址栏的信息
    navigator: 浏览器的配置信息
    document:DOM
    screen:显示设备的信息
    event: 事件对象

    history对象的方法

    javascript:history.go(1)前进一个网页

    javascript:history.go(-1)后退一个网页

    那也可以使用javascript:location.replace这种方式就是替换掉了现在栈里面的地址,所以不能后退

    document对象就是我们常用的dom

    location.href 返回当前页面的 href (URL)

    location.hostname 返回 web 主机的域名

    location.prot 端口号:用来区分一个服务器上的多个网站

    location.hash   锚点

    location.search 返回url后面的字符串

    location.pathname 返回当前页面的路径或文件名

    location.protocol 返回使用的 web 协议(http: 或 https:)

    location.assign 加载新窗口

    location.replace加载新窗口,但是这个不能后退,因为是用新的url替换了history中的旧url

    location.reload(false/true)重新加载当前页面 

     这个API中有个参数force:是否绕过缓存直接从服务器硬盘获取数据  默认false,不强制

    然后写一个笔试题 如何获取url后的每一个搜索参数

    function parseSearch(){
    var search=location.search;
    console.log(search)
    var obj={

    }
    var search1=search.slice(1);
    var str=search1.split("&");
    for(var i=0;i<str.length;i++){
    var arr=str[i],split("=");//按照等号分割成新数组
    obj[arr[0]]=arr[1];//讲数组中的0下标的元素当做属性名,1下标的元素为属性值
    }
    return obj;//循环接受后返回对象obj
    }

  • 相关阅读:
    ORM之聚合和分组查询
    ORM之ManyToManyField操作
    ORM之ForeignKey操作
    ORM之一般操作
    ORM之元信息
    js浮点数的加减乘除
    如何用js去判断当前是否在微信中打开的链接页面
    Vue应用框架整合与实战--Vue技术生态圈篇
    图片纯前端JS压缩的实现
    js要怎么接收后端传的excel文件流?
  • 原文地址:https://www.cnblogs.com/yzxyzx/p/11402643.html
Copyright © 2011-2022 走看看