zoukankan      html  css  js  c++  java
  • windows reload()

    reload() 方法用于重新加载当前文档。
    如果该方法没有规定参数,或者参数是 false,它就会用 HTTP 头 If-Modified-Since 来检测服务器上的文档是否已改变。如果文档已改变,reload() 会再次下载该文档。如果文档未改变,则该方法将从缓存中装载文档。这与用户单击浏览器的刷新按钮的效果是完全一样的。

    我们都知道客户端浏览器是有缓存的,里面存放之前访问过的一些网页文件。
    其实缓存里存储的不只是网页文件,还有服务器发过来的该文件的最后服务器修改时间。
    If-Modified-Since是标准的HTTP请求头标签,在发送HTTP请求时,把浏览器端缓存页面的最后修改时 间一起发到服务器去,服务器会把这个时间与服务器上实际文件的最后修改时间进行比较。
    如果时间一致,那么返回HTTP状态码304(不返回文件内容),客户端接到之后,就直接把本地缓存文 件显示到浏览器中。
    如果时间不一致,就返回HTTP状态码200和新的文件内容,客户端接到之后,会丢弃旧文件,把新文件 缓存起来,并显示到浏览器中。

    window.location.Reload()应该是刷新.【相当于 按页面刷新按钮】

    (如果有数据提交的话,会提示是否提交的(是和否选项)) 

    window.location.href=window.location.href; 
    是定向url提交数据


    当使用刷新时

    按刷新按钮的时候(执行:onclick="location.reload();"),总是出现讨厌的提示下面的窗口:

    “不重新发送信息,则无法刷新网页。
    请单击“重试”再次发送信息,或单击“取消”返回正查看的页。”

    可以用location.href=location.href;替代

    其实在网上都能找到,我只是总结一下,方便自己查找使用

    示例
    URL:http://b.a.com:88/index.php?name=kang&when=2011#first

    属性     含义 
    protocol 协议  "http:"
    hostname 服务器的名字 "b.a.com"
    port 端口 "88"
    pathname URL中主机名后的部分 "/index.php"
    search "?"后的部分,又称为查询字符串 "?name=kang&when=2011"
    hash 返回"#"之后的内容 "#first"
    host 等于hostname + port "b.a.com:88"
    href 当前页面的完整URL  "http://www.a.com:88/index.php?name=kang&when=2011#first"


    window.location和document.location互相等价的,可以交换使用

    location的8个属性都是可读写的,但是只有href与hash的写才有意义。

    例如改变location.href会重新定位到一个URL,而修改location.hash会跳到当前页面中的anchor(<a id="name">或者<div id="id">等)名字的标记(如果有),而且页面不会被重新加载

    注意
    URL:http://b.a.com:88/index.php?name=kang&how=#when=2011#first

    search: "?name=kang&how=" 第一个"?"之后
    hash: "#when=2011#first" 第一个"#"之后的内容
    方法
    location.assign( url )
    location.assign('http://www.baidu.com'); 等同于 window.location = 'http://www.baidu.com'
    这种方式会讲新地址放到浏览器历史栈中,意味着转到新页面后“后退按钮”仍可以回到该页面。
    location.replace( url )
    与assign方法一样,但会从浏览器历史栈中删除本页面,也就是说跳转到新页面后“后退按钮”不能回到该页面。目前IE、Chrome只是简单的跳转,只有Firefox会删除本页面的历史记录。
    location.reload( force )
    重新载入当前页面。force为true时从服务器端重载;false则从浏览器缓存中重载,默认值false。

    location.hash

    要使用 JS 定位锚点,完全可以使用 window.hash 配合元素 ID 完成。比如快速定位到页面的某条评论,则直接使用如下代码即可:

    window.location.hash = "#comment-5981";
    另外 Twitter、Facebook、Google 等已经开始大量使用 #! 这种形式的 hash 方法处理异步交互页面的 URL 可回溯功能。

    location.search

    如果有这样一个 URL 地址:

    http://www.google.com.hk/search?hl=zh-CN&source=hp&biw=1400&bih=935&q=%E8%8A%92%E6%9E%9C%E5%B0%8F%E7%AB%99&aq=f&aqi=&aql=&oq=
    如何利用 JS 脚本捕获页面 GET 方式请求的参数?其实直接使用 window.location.search 获得,然后通过 split 方法结合循环遍历自由组织数据格式。

    另外,如果根据用户的搜索条件刷新页面,只需直接设置 window.location.search 即可。

    windows.open("URL","窗口名称","窗口外观设定");

    <A href="javascript:window.open('webpage.asp','_self')"> 点击这里 </A>

    <a onclick="window.open('webpage.asp','_self');void 0" href="#"> 点击这里 </a>


    于Window.open的参数小结(参书改编) 先看一个例子: 
    [javascipt:]window.open("Webpage.asp?",Derek,"height=100,width=100,status=yes,toolbar=yes, menubar=no,location=no"); 
    此语句打开一个新窗口,页面为webpage.asp,参数为var,名字为Derek,高为100,宽为100,显示状态栏和工具条,不显示菜单和地址。

    具体总结的各个属性参数如下: 
    window = object.open([URL ][, name ][, features ][, replace]]]]) 
    URL:新窗口的URL地址 
    name:新窗口的名称,可以为空 
    featurse:属性控制字符串,在此控制窗口的各种属性,属性之间以逗号隔开。 
    fullscreen= { yes/no/1/0 } 是否全屏,默认no

    channelmode= { yes/no/1/0 } 是否显示频道栏,默认no 
    toolbar= { yes/no/1/0 } 是否显示工具条,默认no 
    location= { yes/no/1/0 } 是否显示地址栏,默认no 
    directories = { yes/no/1/0 } 是否显示转向按钮,默认no 
    status= { yes/no/1/0 } 是否显示窗口状态条,默认no 
    menubar= { yes/no/1/0 } 是否显示菜单,默认no 
    scrollbars= { yes/no/1/0 } 是否显示滚动条,默认yes 
    resizable= { yes/no/1/0 } 是否窗口可调整大小,默认no 
    width=number 窗口宽度(像素单位) 
    height=number 窗口高度(像素单位) 
    top=number 窗口离屏幕顶部距离(像素单位) 
    left=number 窗口离屏幕左边距离(像素单位)

    关于本题中,第二个参数的详解: 
    name可以为:

    _blank 表示新开一个窗口, 
    _parent表示父框架窗口, 
    _self表示覆盖该窗口, 
    xxx表示覆盖名字为xxx的窗口 
    (每个窗口都可以给他命名) 
    不能为省略,可以为空!

  • 相关阅读:
    jsonview插件的常见使用方法整理
    有哪些可以节省chrome内存的扩展插件?
    js得到时间戳(10位数)
    html模板引擎jade的使用
    js获取url参数,操作url参数
    追加window.onload函数
    解决jquery与zepto等其它库冲突兼容的问题
    centos 搭建web平台
    简易web服务器(npm)
    js函数调用与声明 (for时注意)
  • 原文地址:https://www.cnblogs.com/yelongsan/p/8403629.html
Copyright © 2011-2022 走看看