web网页开发

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情
这里主要总结,web网页的开发,即我们经常所看见的淘宝,新闻等网页。我们将一个所见的网页中每次刷新不变的部分,称为静态。这些静态由HTML和CSS组成,他们形成了网页的样式。HTML是一种标记语言,用来结构化我们的网页内容和赋予内容含义(形成树形结构),例如定义段落、标题、和数据表,或在页面中嵌入图片和视频。CSS 是一种样式规则语言,例如设置背景颜色和字体,内容的排版,然后我们将这些样式应用于我们的HTML。

可参考教程:MDN


一个简单的HTML文件人下所示:

<!DOCTYPE html>
<html>
	<head>
	/*head主要有HTML的标题,指定你的文档中字符的编码,作者和描述,在HTML中应用CSS和JavaScript等	*/
		<meta charset="UTF-8">
		<title></title><!--标题-->
		<link rel="stylesheet" type="text/css" href="css/css.css"/><!--引用外部css-->
		<style type="text/css">/*使用内部CSS*/
			.hello{
//    设置class=hello的样式
				color: red;
			}
		</style>
	</head>
	<body>
	//body是HTML的主要内容,描述了页面的结构。
		<h1>hello</h1>
		<div class="hello">	
		</div>
	</body>
	<script src="js/main.js" type="text/javascript" charset="utf-8"></script><!--引用外部js-->
	<script type="text/javascript">/*使用内部js*/
		var hello=document.querySelector(".hello");<!—采用DOM的API,引用html中的元素-->
		var newhello=document.createElement("button");<!--新建html中的元素-->
		newhello.textContent="botton";//设置这个元素的属性以及内容
		hello.appendChild(newhello);<!--在元素后面新插入元素-->
		newhello.onclick()=function (){
			/*onclick 为鼠标点击事件
			 鼠标点击时,触发事件,运行后面的函数function*/
		}
		function hanshu (){
//			单独的函数
		}
	</script>
</html>

如果说HTML和css帮助我们完成了页面上的样式的设计,那么JavaScript就帮助我们完成与用户之间的交互,如用户点击,滑动,输入等。Js(JavaScript的简称)是一种编程语言,允许你创建动态更新的内容,控制多媒体,图像动画,和一些其他的东西。JS通过对HTML上元素的引用对网页上产生的事件(浏览器中发生的动作,例如点击按钮,加载页面或播放视频)进行响应。

大多数现代的web站点是动态的—它们在服务端使用各种类型的数据库来存储数据(服务器), 之后通过运行服务器(server-side) 代码来重新获取需要的数据,把其数据插入到静态页面的模板中,并且生成出HTML渲染到用户浏览上。为此使用HTTP/HTTPS协议在 Web 上进行数据交换,并在数据传输的过程中需经过DNS和TCP/IP 协议。它是client-server协议。客户端和服务端通过交换各自的消息(与数据流正好相反)进行交互。由像浏览器这样的客户端发出的消息叫做 requests,被服务端回应的消息叫做
responses。它是应用层的协议,通过TCP(HTTP),或者是TLS(加密的TCP ,HTTPS)连接来发送。

举个例子:
当你在浏览器里输入一个网址时(在我们的例子里就是走向商店的路上时):

  1. 浏览器在域名系统服务器(DNS)上找出存放网页的服务器的实际地址(IP地址)(找出商店的位置)。
  2. 浏览器发送 HTTP 请求信息(数据的传输遵守TCP/IP 协议)到服务器来请拷贝一份网页到客户端(你走到商店并下订单)。
  3. 服务器同意客户端的请求后,会返回一个“200 OK”信息,同意传输,然后开始将网页的文件以数据包的形式传输到浏览器。
  4. 浏览器将数据包聚集成完整的网页然后将网页呈现给你。

这样一个简单的网页就完成了,但是在实际过程中,仍会许多问题。比如:HTTP是无状态的:在同一个连接中,两个执行成功的请求之间是没有关系的。这就带来了一个问题,用户没有办法在同一个网站中进行连续的交互,比如在一个电商网站里,用户把某个商品加入到购物车,切换一个页面后再次添加了商品,这两次添加商品的请求之间没有关联,浏览器无法知道用户最终选择了哪些商品。再比如:如果传输的数据较多,较大,那么每次交互时,均重新请求时,用户需等待较长时间,体验不好。为解决这些问题,开发人员们设计了AJAX,缓存,web worker,CORS等技术。


Asynchronous JavaScript and XML(Ajax):异步,指无需重新加载整个页面的情况下,只更新部分页面的技术。主要是通过XMLHttpRequest ()(通常缩写为XHR)或 Fetch()来请求。为了进一步提高速度,有些网站还会在首次请求时将资产和数据存储在用户的计算机上,这意味着在后续访问中,他们将使用本地版本,而不是在首次加载页面时下载新副本。 内容仅在更新后从服务器重新加载。XHR允许你使用它的 onload 事件处理器来处理这个事件 — 当onload 事件触发时(当响应已经返回时)这个事件会被运行。
image
AJAX代码:

var request = new XMLHttpRequest();
request.open('GET, url);
request.responseType = 'text';//XHR默认返回文本,可修改格式
request.onload = function() { 
var.textContent = request.response;//返回 };
request.send();

与XHR不同,fetch()返回一个解析HTTP响应的promise,它将解析从服务器发回的响应。我们使用then()来运行一些后续代码,这是我们在其内部定义的函数。这相当于XHR版本中的onload事件处理程序。
Fetch代码:

fetch(url).then(function(response) {
response.text().then(function(text)
 {//text() 也返回了一个 promise 
var.textContent = text;
}
}

对于前面所说的,将资产和数据存储在用户的计算机上,主要才采取cookie,sessionStorage和 localStorage。这些参数均可在浏览器的开发者模式中application中查看。Cookie可以采用http头部扩展的方式,把Cookies添加到头部中,创建一个会话让每次请求都能共享相同的上下文信息,达成相同的状态。注意,HTTP本质是无状态的,使用Cookies可以创建有状态的会话。sessionStorage,只要浏览器开着,数据就会一直保存 (关闭浏览器时数据会丢失)。localStorage,一直保存数据,甚至到浏览器关闭又开启后也是这样。每个域都有一个单独的数据存储区,无法交错使用。Session,由于HTTP协议是无状态的协议,所以服务端需要记录用户的状态时,就需要用某种机制来识具体的用户.典型的场景比如购物车,当你点击下单按钮时,由于HTTP协议无状态,所以并不知道是哪个用户操作的,所以服务端要为特定的用户创建了特定的Session,用用于标识这个用户,并且跟踪用户,这样才知道购物车里面有几本书。这个Session是保存在服务端的,有一个唯一标识。Session是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群、数据库、文件中;
Cookie是客户端保存用户信息的一种机制,用来记录用户的一些信息,也是实现Session的一种方式。

如果你的网站需跨域,去获取资源,则需要使用CORS(Cross-Origin Resource Sharing)技术。这是HTML5定义的如何跨域访问资源的方法。Origin表示本域,也就是浏览器当前页面的域。当JavaScript向外域(如sina.com)发起请求后,浏览器收到响应后,首先检查Access-Control-Allow-Origin是否包含本域,如果是,则此次跨域请求成功,如果不是,则请求失败,JavaScript将无法获取到响应的任何数据。
假设本域是my.com外域是sina.com,只要响应头Access-Control-Allow-Origin为http://my.com,或者是*,本次请求就可以成功。
可见,跨域能否成功,取决于对方服务器是否愿意给你设置一个正确的Access-Control-Allow-Origin,决定权始终在对方手中。

Web网页开发之问卷调查 1.运行结果: 2.代码分析 ①开始部分 <head> <meta charset="utf-8"> <!--author--> <meta name="generator" content="#66AFE9"/> <meta name="author" content="QinHsiu" /> <meta... 阅读详情

相关推荐

鸿蒙next开发Web组件中网页长截图的方案

创建Web组件加载指定的网页,获取Web组件和网页的实际尺寸,并给Web组件绑定自定义的id。

DMZDAMS的博客 1195

Web应用程序开发简介与实例

介绍了用JAVA和JSP进行Web应用程序开发的简单方法,并提供了调试成功的实例源代码

【带你轻松学】ArkUI实战开发-网页加载(Web

使用Web组件时,需要传递一个WebOptions类型的参数,WebOptionssrc:待加载的网页资源地址。controller:页面控制器,主要控制Web组件各种行为,一个对象只能控制一个Web组件,且必须在Web组件和绑定后,才能调用上的方法。// Web控制器build() {Web({src: "https://www.arkui.club", // 默认加载 www.arkui.club 网址})// 省略部分方法。

2401_87677001的博客 990

网页开发基础

网页开发基础

qq_64505257的博客 3987

Web开发

Web开发 工作流程:混合开发、前后端分离开发 前后端分离开发: 混合开发开发工具:VSCode 1.前端 Web 一、初识Web前端 1.网页的组成: 文字、图片、音频、视频、超链接 2.网页的背后: HTML+CSS+JS 3.前端代码如何转换成网页: 通过浏览器内核解析和渲染(不同的浏览器内核不同,解析的效果存在差异) 4.Web标准 HTML:定义网页的结构(页面元素和内容) CSS:定义网页的表现(页面元素的外观、位置等页面样式) JavaScript:定义网页的行为(交互效果) 二、Ht

weixin_72977159的博客 6486

网页开发基础——HTML

网页开发基础——HTML

m0_46155417的博客 2766

Web开发介绍

Web开发介绍

qq_52699757的博客 3658

初入Web网页开发

每个文件有不同的功能,而功能对应需求。假如你只需要开发一个页面不包含交互,那么可以不需要.js文件。:确保HTML中引用的CSS和JS文件路径正确(如文件在同一目录直接写文件名)。搜索AI 发现远远不止,在复杂的项目里面,包含其他各种各样形式的文件。数据在网页中的流动方式,比如用户输入如何被处理,如何与服务器通信。,用JavaScript实现交互功能(如按钮点击事件)。:向设备的特性(Characteristic)写入数据。,用CSS控制样式(如颜色、布局)。,用HTML编写网页结构和内容。

2302_79069463的博客 1111

Web网页开发入门教程

Web开发是创建和维护网站的过程,涉及到网页的结构、样式和交互功能。掌握HTML、CSS和JavaScript是成为Web开发者的第一步。通过学习HTML、CSS和JavaScript,您可以创建功能丰富且美观的网页。持续实践和项目经验将帮助您不断提升Web开发技能。希望本教程对您有所帮助,欢迎在CSDN博客上分享和交流您的学习成果!

m0_73579990的博客 721

Web 应用开发 - 实训一 网页开发

Web应用开发 实训一 网页开发 一、预习: 1、阅读:教材P1-P39 2、要掌握知识要点:表单标记、超链接标记、CSS的引用方式、CSS选择器、DOM、JavaScript的引入(内嵌式、外链式)、JavaScript的使用(事件处理、常用对象)。 二、验证:用谷歌浏览器或IE浏览器打开页面文件(源代码见chapter1.rar) 1、文件1-1(htmlDemo01.html,见p2),效果如图1-1所示。 2、文件1-3(htmlDemo03.html,见p5),效果如图1-4所示。 3、文件1-5

没事发发博客 688

Web/HarmonyOS】采用ArkTS+Web组件开发网页嵌套的全屏应用

本文详细介绍了在鸿蒙应用开发中使用ArkTS+Web组件构建支持双网页嵌套的全屏应用的开发过程。首先,通过DevEco IDE创建ArkTS应用,并修改module.json5配置文件以适配应用需求。接着,通过ArkTS代码实现全屏显示,并隐藏系统栏,确保应用界面无干扰。核心代码展示了如何获取窗口对象、设置全屏、隐藏系统栏以及调整状态栏颜色等操作。最后,通过HTML和CSS实现双网页嵌套,展示了如何在应用中嵌入多个网页,并通过底部导航栏进行切换。本文为开发者提供了完整的代码示例和实现思路,帮助快速上手鸿蒙应

沙师弟专栏 1169

WEB服务及网页开发平台

从底层向应用层对应服务传输数据的通道,通常会隐藏掉,输入网址时,大多数信息浏览器会自动帮我们补充,其中就包括端口号。例子:http : // www.163.com:80 / 123/234 / index.html。(2)程序语言:主要是支持更多功能,比如:对比功能、搜索功能、排序功能、注册登录功能。格式:协议 : // 域名或IP:端口号 / 网页路径 / 默认网页文件名。默认文件名对应普通网页文件名,普通网页的URL中,非默认文件名必须手写。(2)域名:域名分级,例如www.163.com。

weixin_68876011的博客 1213

鸿蒙开发系列(HarmonyOS)Web组件及加载网页示例

本示例演示加载网页的四种方式,默认是加载资源文件,运行后的初始界面如下所示:

wqad23256的博客 1883

Web开发实战:100个网页设计与开发实例解析

固定布局是一种网页布局方式,它不随浏览器窗口大小的变化而变化。在这种布局中,网站元素的大小和位置是固定的,通常使用像素(px)作为单位。固定布局允许设计师精确控制页面的布局,确保在所有设备上呈现出相同的设计和布局效果。然而,这种布局方式在响应式设计日益流行的当下,已较少用于主网站设计,而更多地用于特定页面的特定内容。虽然Bootstrap提供的默认样式已经非常美观,但在实际开发中,根据项目的品牌和设计要求,我们需要自定义样式以适应不同场景。

weixin_35696112的博客 1164

web前端开发技术 web课程设计 网页规划与设计web期末作业设计网页

网页设计题材,DIV+CSS 布局制作,HTML+CSS网页设计期末课程大作业,网页设计作业,网页制作作业, 学生网页作业, 网页作业成品, 网页作业模板HTML:结构CSS:样式在操作方面上运用了html5和css3,采用了div+css结构、表单、超链接、浮动、绝对定位、相对定位、字体样式、引用视频等基础知识JavaScript:做与用户的交互行为。

948

谈新手web开发的学习过程之网页设计

很高兴能和大家在这里分享我对从事web开发工作的学习过程的认识,当你来看这篇文章的时候证明你有从事这行业的打算或者正在从事这个行业,希望我的这篇文章能为你打开学习思路,起到抛砖引玉的作用。         首先,回答下面几个问题,        1.你对编程感兴趣吗?是否愿意一坐就是十几个小时甚至几十个小时不停地想思路,敲代码,改BUG?        2.你是一个肯吃苦的人吗?当你思路枯竭

wuji_1的专栏 1339

Web网页开发——水果忍者

复刻经典小游戏——水果忍者

qq_34295179的博客 468

[Web开发] IE8 网页开发参考文档

IE8在兼容Web 标准方面做了巨大的改进,所以和以往的IE版本有非常大的差异。 以下是一些文档帮助Web 开发者了解IE8 内核引擎的变化,以便开发出更好更炫的网页。HTML and CSS Support:  http://msdn.microsoft.com/en-us/library/cc817571.aspx CSS Compatibility and Internet

IE浏览器开发 4167

JAVA Web —— A / 网页开发基础

HTML的主要作用是通过 HTML标签对网页中的文本、图片、声音等内容进行描述。HTML,网页就是一个扩展名为“htm或“.htm”的文件,它可以用记事本打开。单标签也被称为“空标签”,是指用一个标签就可以完整地描述某个功能。<标签名 /> <!--必须要有空格-->

我会等 668
下一篇: host原理
romanlan
博客等级 码龄8年 10粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值