Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我可以防止history.popstate在初始页面加载时触发吗?

我可以防止history.popstate在初始页面加载时触发吗?
EN

Stack Overflow用户
提问于 2011-03-06 10:47:27
回答 5查看 77.3K关注 0票数 25

我在一个通过AJAX提供内容的网站上工作。

如果你点击菜单中的一项,内容div就会更新为$.get响应,没什么特别的。

我正在实现history.pushState,以允许使用浏览器的后退/前进按钮进行导航。

我有以下内容可以在历史导航中加载:

代码语言:javascript
运行
AI代码解释
复制
$(function() {
    $(window).bind("popstate", function() {
        $.getScript(location.href); 
    });
});

问题是,当第一次加载页面时,此函数会执行$.getScript操作,因此页面会立即再次加载。第一次加载页面时,它会呈现初始的HTML视图,第二次加载时,它会呈现JS视图,因为这是一个JS请求。

如何防止此事件在具有HTML请求的页面上触发?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-03-07 18:38:44

使用原生的HTML5历史应用程序接口你会遇到一些问题,每个HTML5浏览器对应用程序接口的处理略有不同,所以你不能只编写一次代码就期望它在没有实现变通方法的情况下工作。History.js为HTML5 History API提供了一个跨浏览器的API,如果您想沿着这条路走下去,它还为HTML4浏览器提供了一个可选的hashchange回退。

为了将您的网站升级为RIA/Ajax应用程序,您可以使用以下代码片段:https://github.com/browserstate/ajaxify

这是更长的文章Intelligent State Handling的一部分,这篇文章对hashbang、哈希和html5历史api进行了解释。

如果您需要进一步的帮助,请告诉我:)干杯。

票数 38
EN

Stack Overflow用户

发布于 2011-03-23 06:48:27

你需要拿到event.originalEvent

代码语言:javascript
运行
AI代码解释
复制
// Somewhere in your previous code
if (history && history.pushState) {
  history.pushState({module:"leave"}, document.title, this.href);
}


$(window).bind("popstate", function(evt) {
  var state = evt.originalEvent.state;
  if (state && state.module === "leave") {
    $.getScript(location.href);
  }
});
票数 23
EN

Stack Overflow用户

发布于 2011-03-07 14:24:16

当popstate事件在页面加载时激发时,它在事件对象中将不具有state属性。这允许您检查事件是否为页面加载而触发。

代码语言:javascript
运行
AI代码解释
复制
window.onpopstate = function (event) {
  if (event.state) {
    // do your thing
  } else {
    // triggered by a page load
  }
}
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5210034

复制
相关文章
api网关调用出现未知异常 api网关和防火墙的区别
api网关现在已经是各大互联网企业和平台以及公司网站都使用的一种安全防护系统。对于现代化企业和公司来说,公司信息安全以及服务端的服务保障都是非常重要的,直接影响着公司财产的安全以及用户的体验 api网关的建立,帮助企业解决了许许多多的问题,现在来了解一些专业知识,比如api网关调用出现未知异常怎么办?
用户8715145
2021/12/29
9780
kong 网关 修改返回数据_kong网关教程
路由用来匹配客户端向上游服务器请求的规则,也就是客户端调用的 API,每个路由(Route)和一个服务(Service) 相关联,一个服务可有有多个路由,我们可以对每一条路由进行细粒度的配置,可以使用正则表达式进行通用的配置。
全栈程序员站长
2022/09/30
1.2K0
如何设计API返回码(错误码)?
—1— 前言 客户端请求API,通常需要通过返回码来判断API返回的结果是否符合预期,以及该如何处理返回的内容等。 相信很多同学都吃过返回码定义混乱的亏,有的API用返回码是int类型,有的是string类型,有的用0表示成功,又有的用1表示成功,还有用“true”表示成功,碰上这种事情,只能说:头疼。 API返回码的设计还是要认真对待,毕竟好的返回码设计可以降低沟通成本以及程序的维护成本。 —2— HTTP 状态码 以HTTP状态码为例,为了更加清晰的表述和区分状态码的含义,HTTP状态做了分段。 对于
玄姐谈AGI
2022/03/03
8560
如何设计API返回码(错误码)?
客户端请求API,通常需要通过返回码来判断API返回的结果是否符合预期,以及该如何处理返回的内容等
KenTalk
2020/08/02
6.6K0
API网关客户端调用出现504问题排查
API 网关是用于实现完整 API 托管的服务,用于协助开发者轻松完成 API 的创建、维护、发布、监控等整个生命周期的管理。通过 API 网关,您可以封装后端各种服务,以 API 的形式,提供给各方使用。同时,API 网关协助您完成 API 文档管理、API 测试和 SDK 生成等。
邓愉悦
2020/10/23
5.5K0
API网关 APIG,调用已发布的API,错误码0605
在通过API网关开放电话号码归属地查询服务前,您需要获取登录华为云控制台的用户名和密码,并确保已实名认证此用户。同时,您还需要获取如表1所示信息。
玖柒的小窝
2021/09/19
1.9K0
API网关
假设你正在开发一个电商网站,那么这里会涉及到很多后端的微服务,比如会员、商品、推荐服务等等。
chenchenchen
2019/09/03
3K0
API网关
API 网关 ( API gateway )
在 IOT ( 物联网 )中,当我们的一些设备。例如( 监控、传感器等 )需要将收集到的数据和信息进行汇总时,我们就需要一个 API 网关来接收从千百个终端发出的请求,它实现对外统一接口,对内进行负载均衡的功能。极大的方便了 API系统 的开发与维护。如果有需要,API 网关也可以根据各终端使用的不同通信协议来进行协议适配,从而方便应用层进行数据采集和分析。
拿我格子衫来
2022/01/24
5.5K0
API 网关 ( API gateway )
API 网关
API 网关可以看做是系统与外界联通的入口,我们可以在网关处理一些非业务逻辑的逻辑,比如权限验证,监控,缓存,请求路由等等。
happyJared
2019/12/11
1.9K0
api网关 kong_什么是api网关
Kong是一款基于OpenResty(Nginx + Lua模块)编写的高可用、易扩展的,由Mashape公司开源的API Gateway项目。Kong是基于NGINX和Apache Cassandra或PostgreSQL构建的,能提供易于使用的RESTful API来操作和配置API管理系统,所以它可以水平扩展多个Kong服务器,通过前置的负载均衡配置把请求均匀地分发到各个Server,来应对大批量的网络请求。
全栈程序员站长
2022/10/01
2.1K0
api网关 kong_什么是api网关
Kong网关初探_API网关
Kong开源版不提供dashboard支持,只有Kong企业版才有该功能。但有第三方控制台Konga同样可以友好地管理Kong Admin API对象,快速安装如下:
全栈程序员站长
2022/09/30
3.8K0
Kong网关初探_API网关
API 网关 Kong
所谓网关,主要作用就是连接两个不同网络的设备,而今天所讲的 API 网关是指承接和分发客户端所有请求的网关层。
平也
2020/05/22
2.4K0
什么是api网关,api网关功能是什么
API网关,简而言之,就是一个服务器,他作为系统的准入口,是为了能够让系统内部架构各司其职。它的核心就是让客户端和消费端都通过它连接在一起,所有的业务包括身份验证,监控缓存等等,都是通过网关来实现。那你知道api网关功能是什么吗?
用户8715145
2021/10/19
2.6K0
初识API网关 / API Gateway
在日常工作中,不同的场合下,我们可能听说过很多次网关这个名称,这里说的网关特指API网关(API Gataway)。字面意思是指将所有API的调用统一接入API网关层,由网关层负责接入和输出。
七七分享
2019/06/01
9.5K3
API网关作用
随着互联网技术的飞速发展,各类线上业务蓬勃发展,软件系统如雨后春笋般呈现在我们面前。
用户1880875
2021/09/07
2.2K0
API网关怎么部署 不用api网关可以吗?
许多在互联网公司工作的人都了解api网关。所谓的api网关,就是一个统一的微服务应用访问入口。由于现在许多企业的应用APP功能繁多,种类交叉,所以一个统一的api网关入口可以帮助用户通过一个入口顺利的直达不同的微服务当中。不仅给用户访问带来方便,对于服务端的运维工作也会带来极大的方便,下面来看一看API网关怎么部署?
用户8715145
2021/12/21
2.6K0
api网关监控功能 api网关的重要性
随着企业级应用系统的复杂化以及多重系统的交互性,api网关在实际应用当中越来越广泛,api网关的基本功能多种多样,包括监控预警功能,路由分发功能,安全策略调用链追踪等等不同的使用功能。下面来谈一谈api网关监控功能。
用户8715145
2021/12/15
2.8K0
API 网关 Kong
Kong 是一款基于 OpenResty 的 API 网关平台,在客户端和(微)服务之间转发 API 通信。Kong 通过插件的方式扩展自己的功能,其中包括身份验证、安全控制、流量控制、熔断机制、日志、黑名单、API 分发等等众多功能。下图是官网给出的传统项目架构和使用 Kong 的架构:
李振
2021/11/26
1.7K0
API 网关 Kong
谈谈 API 网关
理论上,客户端可以直接向微服务发送请求,每个微服务都有一个公开的URL,该URL将映射到微服务的负载均衡器,由它负责在可用实例之间分发请求。但这种方式存在如下缺陷:
方志朋
2019/06/21
2.1K0
谈谈 API 网关
api开源网关是什么?必须使用api网关吗?
现在的许多互联网安全技术都有很多的版本和型号,就比如一些软件来说,有商务型软件,也有免费型软件,还有一些可以供技术人员再次开发的开源软件。 api网关的作用许多互联网人士都已经了解了,主要作用于客户端与服务端的相互交叉访问。现在来了解一下api开源网关是什么?
用户8715145
2021/12/29
2K0

相似问题

使用引导和单选按钮进行响应

12

引导响应表和按钮

15

输入组下拉式响应引导按钮

12

响应引导输入组按钮无法对齐

14

使用引导带3创建最小输入字段和按钮

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文