扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
你好,这个是HTML5的。Ajax局部刷新可以通过HTML5的新特性history.pushState 修改browser address。
网站设计制作过程拒绝使用模板建站;使用PHP+MYSQL原生开发可交付网站源代码;符合网站优化排名的后台管理系统;成都网站设计、成都网站建设收费合理;免费进行网站备案等企业网站建设一条龙服务.我们是一家持续稳定运营了10余年的创新互联网站建设公司。
具体演示代码我这里没有现成。网上有相关介绍你搜索一下 利用HTML5新特性改变浏览器地址后不刷新页面 。
a href="index1.html"点击/a
点击后跳转到index1.html页面。
一、HTML的开发工具和使用的浏览器
开发工具:记事本等文本编辑器,Atom、VisualStudioCode( VSCode)、Brackets、Sublime text和Hbuider。
浏览器:Chrome、Firefox、IE、Safari、IPhone、Android。
二、HTML的基本要素
DOCTYPE 描述文档的类型
html 网页的根元素,写在网页的在外面
head 网页的头部信息,写在html标记的里面
body 网页的内容,写在html标记的里面
具体描述:
1、DOCTYPE 描述文档的类型,规定web 浏览器关于页面使用哪个 HTML 版本进行编写的指令。
网页可以使用的具体版本,网页中可以使用那些标记,每个版本的DTD版本均有不同
使用例子
HTML4的例子
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""
HTML5的例子
2、html/html 网页文档中的根标记
html 标签有三个特殊的属性
manifest 指定网页缓存文件,可以让用户离线的时候也可以访问文件。
xmlns 设置html名空间,比如把网页设置成xhml的时候可以使用这个值。
lang 设置网页的描述语言,比如中文是zh;英文是en。
3、head/head头部标签在网页中只能有一个,设置HTML文档的头部信息,里面内容不会在页面中显示出来·。
head里面的标记
meta 标记
title定义网页的标题
link 链接
script 标记JavaScript脚本的内容
style 标记css样式
meta 标记
4、body/body只能有一个,显示网页的主体内容。
代码示例:
请点击输入图片描述
1 !DOCTYPE html 2 html lang="en" 3 head 4 meta charset="UTF-8" 5 title网页标题(显示在浏览器上)/title 6 meta name="description" content="网页内容的简单描述" 7 meta name="keywords" content="网页关键词" 8 link rel="/css/style.css" 9 script src="/js/script.js"/script10 /head11 body12 header网页头部内容/header13 main网页主要内容/main14 nav网页的导航内容/nav15 footer网页的页脚内容/footer16 /body17 /html
请点击输入图片描述
请点击输入图片描述
三、写在head中的标签
(一)、meta标签
meta元素的属性:
name 描述信息的名称,来标记这是一个什么样的信息
http-equiv 描述行为
content 描述的内容
charset 指定网页的编码
1、name 属性
1 meta name="author" content="nyw"2 !--作者, 定义网页的作者 --3 meta name="description" content="meta标记学习"4 !-- 描述,描述网页的实际内容 --5 meta name="keywords" content="HTML,meta"6 !-- 关键字,定义网页关键字 --
2、http-equiv属性
1 meta http-equiv="refresh" content="30"2 !-- 网页30s后自动刷新 --3 meta http-equiv="refresh" content="5,url=dom.html"4 !-- 网页30秒后跳转到dom.html文档 --
meta http-equiv="refresh" content="5,url=dom.html"
http-equiv描述网页的行为,行为 refresh刷新,内容为5,表示5秒后跳转到 dom.html这个文档。
3、content 属性
特殊属性
content-type 指定http头部信息的文字编码(最为常用)
default-style 指定优先使用的样式单(stylesheet)
refresh 用于网页的自动刷新或是页面跳转
set-cookie 设置页面的cookie(现在已经不再推荐使用)
4、charset属性
指定网页的编码,推荐使用UTF-8来增加网页的兼容性。
代码实例:
为搜索引擎抓取机器人准备一些信息
这段代码可以禁止搜索引擎缓存和跟踪网页。
meta name="robots" content="noindex,nofollow"
!-- name定义的是机器人,内容部分表示不要被搜索引擎缓存,也不要被搜索引擎跟踪 --
代码实例:
请点击输入图片描述
1 !DOCTYPE html 2 html lang="en" 3 head 4 meta charset="UTF-8" 5 title网页标题(显示在浏览器上)/title 6 meta name="author" content="nyw" 7 !--作者, 定义网页的作者 -- 8 meta name="description" content="meta标记学习" 9 !-- 描述,描述网页的实际内容 --10 meta name="keywords" content="HTML,meta"11 !-- 关键字,定义网页关键字 --12 meta http-equiv="refresh" content="30"13 !-- 网页30s后自动刷新 --14 meta http-equiv="refresh" content="5,url=dom.html"15 !-- 网页30秒后跳转到dom.html文档 --16 meta name="robots" content="noindex,nofollow"17 !-- name定义的是机器人,内容部分表示不要被搜索引擎缓存,也不要被搜索引擎跟踪 --18 /head19 body20 /body21 /html
请点击输入图片描述
(二)、title、base标记
title和base标记都是写在head标签中
title:设置网页的标题
写法:title内容/title。
base:指定网页跳转基准URL,如果不指定的话默认为当前网站的当前路径。
写法:base href=""
base属性值:
href 指定网页跳转到基准URL,如果不指定的话则默认为当前网站的当前路径。
base href="" 这是将页面跳转到百度的网站打开。
target 指定链接的跳转帧如果不指定的话,则是在当前页面中跳转。
base target="_blank" 网页中的链接都应该在新的窗口中打开。
terget属性值:
_blank 在新窗口中打开被链接的文档
_self 默认值,在相同框架中打开被链接的文档
_parent 在父框架集中
_top 在整个窗口中打开被链接文档·
framename 在指定框架中打开被链接文档
(三)、link标记
link标记:链接外部文件时使用的标记,可以把外部文件的内容引入到当前文件中来,使当前网页实现更多的功能。
link属性:
href:指定链接外部路径的路径和文件名,要设置全路径并且带文件名
rel:引用文件,引用资源的类型定义
我们在使用link标签引用外部文件的时候,外部文件的类型是多种多样的。
alternate 代替文档(种子,其他语言版本,其他格式等等)
author 网页的作者
help 帮助文件的链接
icon 网页的图标
next 如果是连续网页的时候,指定下一个网页
prefetch 把链接外部资源时提前缓存起来。
prev 如果是连续网页
media 链接文件或是资源属于哪一种资源。
hreflang 链接文件的语言种类
type 链接文件的mi/me类型(比如说,图片图标文本)
sizes 根据link链接文件的类型,来指定文件的大小
代码示例:
链接网页图标:
网站的图标指定,可以显示在浏览器的图标栏,也可以被手机读取作为网站的图标存入收藏夹
1 !-- 网站的图标指定,可以显示在浏览器的图标栏,也可以被手机读取作为网站的图标存入收藏夹 --2 link rel="icon"3 !-- 示例 --4 link rel="icon" href="img/favicon.png" type="image/png"5 link rel="shortcut icon" href="img/favicon.ico" type="image/x-icon"6 link rel="apple-touch-icon" href="img/apple-touch-icon.png" type="image/png"
注意:后面的href和前面type标注的类型要一致,这样既可以显示在浏览器,又可以显示在手机上
链接外部样式单
1 link rel="stylesheet"2 link rel="stylesheet" href="style1.css" media="screen"3 link rel="stylesheet" href="style2.css" title="主题样式文件"4 link rel=" alternate stylesheet" href="style3.css" title="可选样式单"
说明:
alternate 会在浏览器中会弹出一个对话框,供用户可以进行选择
media 表示媒体类型为屏幕,可以是手机,但不包括打印机和投影仪
title 对这个link进行简单的说明
网站RSS种子指定
!-- 网站RSS种子指定 --
link rel="alternate" type="application/rss+xml"
为搜索引擎的准备的网页的URL
!-- 为搜索引擎的准备的网页的URL --
link rel="canonical"
link rel="canonical" href=""
我们很多时候,并不了解知识到底是什么?如同说,我们可能觉得知识的长久性和短暂性,但是其本质,很多时候不了解。这并不是说,开发中需要累计知识,而是说,要累积可用的,并且好用的知识,这里并没有相反。缘何?相反的一面是因为,知识没有应用到对等需求的方面。所以,就功利性质而言,工具书籍自然是有其作用的;然而“课外读本”也不是毫无价值。
需要认识这条信息,没有一定的经历,是无法感受的;正如同杞人忧天的思虑,都是没有经过印证的。当然,已经印证过的,如果还要去印证,那么这中间必然是认识层面上面出现了异常。平时的认知和出现异常时候的异常。这就是经验了。
本文前承风格,继续谈谈用户体验。
前文说明了缓存对用户的体验以及作用。本文再次谈及。缓存的作用在于,让用户不需要每次打开产品就进行耗流量的操作。例如某些文件是否可以缓存本地,那就直接读取,而不用从服务器端再次拉取。本质而言,可复用性很强。
从意义而言,缓存在于最大限度地避免用户在使用产品的时候的细微时间的拖延。这个细微的时间的拖延,可以累积,所以对于产品而言,增加这些体验尤其重要;累积的细微时间,最终的体验结果就是产品卡顿。所以“尽可能地应用缓存是一个原则,不论是服务器端还是客户端”。
我们说说刷新。我们每次更新html5页面,会发现有时候old的页面没有及时刷新。这是一个问题。那么我们怎么做到刷新呢。其实,这里的要求必然是非常简单的页面了,如果复杂的页面,刷新的方式自然是另外一回事了,而不是简单页面的刷新。刷新和缓存是一个对立面,有时候,真的需要把刷新和缓存对调。简单的页面,已经确定了不会更多附加的时候,自然是刷新比较好。一则产品流量不会过分消耗,二则产品体验相差不大。复杂的页面就必须考虑缓存了。
刷新,自然不是一直刷新,而是每次仅仅刷新一次。这点尤其重要。实现的要点是reload页面,并且添加尾缀。具体的意义就是添加唯一标识符,实现再次load页面的时候,可以不再刷新即可。思路如下:在定时器回调中,获取url地址,添加特殊尾缀,reload之后,获取尾缀,发现是特殊标识符结尾,那么不再reload,否则reload。
小提示。在公众号很多期之前,我有写过layui。这是一款极其优秀的框架。我之前使用过的H-ui框架就是集成这个的,当然H-ui还集成了其他的优秀组件。包括各种弹出层,都是出自layui,很不错的组件。后面我将前端H-ui结合了后端laraval。开发模式比较简单,极其好用。Layui分电脑端和移动端,体验自然不同。这种小提示,默认是很酷的黑色底色,上面配置弹出的信息内容,显得好看,而且不失移动风格。Layui支持很多风格,如果可以应用的话,尽可能地应用layui。如果网页端支持移动和网页,那么可以考虑不同平台加载不同的layui组件即可。
Loading。加载页面也是增加体验的一个小工具。尽可能地使用loading不失为一种策略,除非能够保证提供绝对的网络服务。既然不能保证,那么请使用loading。这里说网页的loading如果通过自己实现,总是觉得非常费时。不管需不需要多久,总之实现起来,还是要考虑很多,既然layui提供,那么尽可能地应用组件已经拥有的。例如网络请求中,使用layui的组件,实现loading是一个极其好的选择。设置type为2即可。当然关闭这个loading,首先得保存loading的返回值,一个div或者其他。在其他地方调用close即可。
必须等到图片完全加载后才能对其进行操作, 浏览器通常会在页面脚本执行的同时异步加载图片。 如果试图在图片未完全加载之前就将其呈现到canvas 上,将不会显示任何图片. \x0d\x0a\x0d\x0a var img= new Image(); \x0d\x0a img.src = "bark.jpg"; \x0d\x0a \x0d\x0a // 图片加载完后,将其显示在canvas 上 \x0d\x0a img.onload = function () { \x0d\x0a drawCanvas(); \x0d\x0a }
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流