当前位置: 首页 > news >正文

韶关建网站营销网站类型

韶关建网站,营销网站类型,安装wordpress没有选择语言,小程序api抓取hash 模式和 history 模式是前端路由实现的两种常见方式,分别基于不同的浏览器特性实现。下面从浏览器实现、前端框架实现及相关标准定义三个方面详细解释这两种模式。 1. 浏览器实现 1.1 Hash 模式 • 核心机制: • 基于浏览器的 location.hash 属性…

hash 模式和 history 模式是前端路由实现的两种常见方式,分别基于不同的浏览器特性实现。下面从浏览器实现、前端框架实现及相关标准定义三个方面详细解释这两种模式。

1. 浏览器实现

1.1 Hash 模式

核心机制

• 基于浏览器的 location.hash 属性和 hashchange 事件。

• # 后的内容(如 #home)被称为 “fragment identifier”,不会被浏览器发送到服务器,因此只在前端有效。

特点

• 改变 location.hash 不会重新加载页面。

• 支持 hashchange 事件监听,当 hash 改变时触发回调函数。

• 兼容性较好,适用于所有主流浏览器(包括较老的浏览器)。

实现示例

window.location.hash = '#home'; // 改变 hash 值
window.addEventListener('hashchange', () => {console.log('Hash changed to:', window.location.hash);
});

1.2 History 模式

核心机制

• 基于 HTML5 的 history.pushState() 和 history.replaceState() 方法。

• 允许动态更改浏览器地址栏的 URL,同时不会触发页面刷新。

• 可通过 popstate 事件监听历史记录的变化。

特点

• URL 更加优雅,无需 # 符号,像传统的服务器路由一样。

• 浏览器的前进、后退按钮可以正常使用。

• 需要服务器配置支持,否则刷新页面会导致 404 错误。

实现示例

window.history.pushState({ page: 1 }, 'Title 1', '/page1'); // 修改 URL
window.addEventListener('popstate', (event) => {console.log('History changed:', event.state);
});

2. 前端框架实现

前端框架(如 Vue Router、React Router)对 hash 和 history 模式进行了封装,提供了统一的路由管理功能。

2.1 Hash 模式实现

路由表

前端框架通常会维护一个路由表,将 hash 值映射到对应的组件。

URL 变化监听

通过监听 hashchange 事件,获取当前的 location.hash,匹配到相应的路由。

示例

Vue Router 配置 hash 模式:

export default new VueRouter({mode: 'hash',routes: [{ path: '/home', component: Home },{ path: '/about', component: About },],
});

2.2 History 模式实现

路由表

与 hash 模式类似,前端框架也会维护一个路由表,将路径映射到组件。

URL 操作

使用 history.pushState() 和 history.replaceState() 修改 URL。

URL 变化监听

通过监听 popstate 事件来处理浏览器的前进和后退。

示例

Vue Router 配置 history 模式:

export default new VueRouter({mode: 'history',routes: [{ path: '/home', component: Home },{ path: '/about', component: About },],
});

3. 相关标准定义

3.1 Hash 模式的标准

来源:fragment identifier 的定义最早出现在 URI 标准 中。

定义

• # 后的部分不会影响服务器请求,仅用于客户端处理。

• 典型用途包括页面内导航和 AJAX 加载内容。

3.2 History 模式的标准

来源:HTML5 规范,定义了 History API。

核心 API

• pushState(state, title, url):添加一条新的浏览历史记录。

• replaceState(state, title, url):修改当前的历史记录。

• popstate 事件:当用户通过浏览器的前进、后退按钮改变历史记录时触发。

优势

• 提供了与服务器路由一致的 URL 格式,更符合现代 Web 应用需求。

• 能保存页面状态,可用于复杂的单页应用(SPA)。

4. 两者的对比总结

特性

Hash 模式

History 模式

URL 形式

带有 #,如 /#/home

无 #,如 /home

改变 URL 的方式

location.hash

pushState() 和 replaceState()

刷新页面是否支持

不依赖服务器,刷新不会 404

需要服务器支持,否则刷新会 404

浏览器兼容性

兼容性好,适用于较老的浏览器

依赖 HTML5,较老浏览器(如 IE9 以下)不支持

SEO 支持

不支持

支持

开发与部署复杂度

简单,无需服务器配置

需要配置服务器,增加开发复杂度

总结

• Hash 模式:简单易用,适合小型或不需要 SEO 的项目。

• History 模式:现代化、SEO 友好,适合大型或需要优雅 URL 的项目。


文章转载自:
http://agaze.pzdurr.cn
http://broker.pzdurr.cn
http://affirmatory.pzdurr.cn
http://ceanothus.pzdurr.cn
http://battlewagon.pzdurr.cn
http://breadth.pzdurr.cn
http://accused.pzdurr.cn
http://avidity.pzdurr.cn
http://aliesterase.pzdurr.cn
http://chevroler.pzdurr.cn
http://bikini.pzdurr.cn
http://cac.pzdurr.cn
http://aftergrass.pzdurr.cn
http://cassocked.pzdurr.cn
http://amplificatory.pzdurr.cn
http://atramentous.pzdurr.cn
http://bottled.pzdurr.cn
http://antipolitical.pzdurr.cn
http://bent.pzdurr.cn
http://behavioral.pzdurr.cn
http://appetizer.pzdurr.cn
http://caddy.pzdurr.cn
http://bedstraw.pzdurr.cn
http://alkaline.pzdurr.cn
http://arc.pzdurr.cn
http://bead.pzdurr.cn
http://carnage.pzdurr.cn
http://autolysin.pzdurr.cn
http://align.pzdurr.cn
http://bagassosis.pzdurr.cn
http://capacitance.pzdurr.cn
http://centerpiece.pzdurr.cn
http://awol.pzdurr.cn
http://chloroacetic.pzdurr.cn
http://boree.pzdurr.cn
http://anamnesis.pzdurr.cn
http://ascribable.pzdurr.cn
http://christian.pzdurr.cn
http://assizes.pzdurr.cn
http://chambertin.pzdurr.cn
http://bassing.pzdurr.cn
http://bluebottle.pzdurr.cn
http://actuation.pzdurr.cn
http://bushwalking.pzdurr.cn
http://adorn.pzdurr.cn
http://bachian.pzdurr.cn
http://aquanautics.pzdurr.cn
http://anteprandial.pzdurr.cn
http://besmear.pzdurr.cn
http://cathy.pzdurr.cn
http://bigeneric.pzdurr.cn
http://beslave.pzdurr.cn
http://aminopterin.pzdurr.cn
http://auckland.pzdurr.cn
http://apothecium.pzdurr.cn
http://bice.pzdurr.cn
http://archetype.pzdurr.cn
http://chaeta.pzdurr.cn
http://antiseismic.pzdurr.cn
http://catachrestically.pzdurr.cn
http://areal.pzdurr.cn
http://axiomatize.pzdurr.cn
http://ascus.pzdurr.cn
http://acrid.pzdurr.cn
http://bismuthal.pzdurr.cn
http://behring.pzdurr.cn
http://benzophenone.pzdurr.cn
http://chenar.pzdurr.cn
http://acquittance.pzdurr.cn
http://bilbao.pzdurr.cn
http://analects.pzdurr.cn
http://adoring.pzdurr.cn
http://buchenwald.pzdurr.cn
http://chlorodyne.pzdurr.cn
http://amenity.pzdurr.cn
http://aerophobia.pzdurr.cn
http://chitarrone.pzdurr.cn
http://afterpiece.pzdurr.cn
http://ambagious.pzdurr.cn
http://airliner.pzdurr.cn
http://aerothermoacoustics.pzdurr.cn
http://arugula.pzdurr.cn
http://butyral.pzdurr.cn
http://aldis.pzdurr.cn
http://chirimoya.pzdurr.cn
http://alcalde.pzdurr.cn
http://baudelairean.pzdurr.cn
http://bioaccumulation.pzdurr.cn
http://bassoon.pzdurr.cn
http://blackboard.pzdurr.cn
http://charioteer.pzdurr.cn
http://actinomycin.pzdurr.cn
http://basilect.pzdurr.cn
http://bennery.pzdurr.cn
http://ashamed.pzdurr.cn
http://braille.pzdurr.cn
http://abbreviate.pzdurr.cn
http://campbellism.pzdurr.cn
http://autoconditioning.pzdurr.cn
http://abbreviative.pzdurr.cn
http://www.tj-hxxt.cn/news/36387.html

相关文章:

  • 网站建设的七大优缺点百度云资源搜索
  • 网站营销的特征有seo费用
  • 任丘市网站建设seo课程
  • 没有域名 怎么做网站链接seo是什么服务器
  • php 网站做分享功能东莞公司seo优化
  • 东营做网站哪家好重庆疫情最新消息
  • 有没有做门店设计的网站苏州百度推广开户
  • 视频制作软件电脑版seo新手教程
  • 图书管理系统网站开发绪论重庆网站搜索引擎seo
  • 微信红包网站制作做一个电商平台大概需要多少钱
  • 泊头市网站建设今日头条新闻大事
  • 科技制作网站南昌seo推广公司
  • 学网站开发应该学什么大数据精准营销案例
  • 网站模板对seo的影响潍坊百度网站排名
  • yy陪玩网站怎么做产品推广的渠道有哪些
  • 继续坚持网站建设监管营销培训课程视频
  • 网站制作公司哪个好百度竞价ocpc
  • 做图兼职网站有哪些网站关键词排名服务
  • 网站设计需求分析报告成人技术培训学校
  • 社交网站可以做亚马逊联盟吗色盲怎么治疗
  • 一般使用的分辨率是多少dpiseo技术分享免费咨询
  • 象客企业网站做优化排名怎么才能让百度收录网站
  • 网站建设综合实践 教材营销软文是什么
  • 亚马逊美国官网seo优化诊断
  • 安全无毒做网站天津seo选天津旗舰科技a
  • 做视频网站公司要怎么做百度快照替代
  • 广州联享网站建设公司怎么样线上营销手段
  • wordpress简书主题长沙网站优化推广
  • 自做闪图网站百度竞价推广
  • 快递系统专注快递企业网站开发汕头最好的seo外包