浏览器中5种常用的事件解析

本篇文章给大家带来的内容是关于浏览器中常用的事件解析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

表单事件

键盘事件

, 的值发生变化时触发。此外,打开 contenteditable 属性的元素,只要值发生变化,也会触发 input 事件。input 事件的一个特点,就是会连续触发,比如用户每次按下一次按键,就会触发一次input事件。

此类事件包括: keydown, keyup,

鼠标事件

select 事件当在,

change 事件当, ,

激活单选框(radio)或复选框(checkbox)时触发。

用户提交时触发。比如,从下列列表(select)完成选择,在日期或文件输入框完成选择。

当文本框或textarea元素的值发生改变,并且丧失焦点时触发。

reset事件当表单重置(所有表单成员变回默认值)时由form元素触发。

submit事件当表单数据向服务器提交时由form元素触发。

文档事件:

beforeunload

beforeunload 事件当窗口将要关闭,或者 document 和网页资源将要卸载时触发。它可以用来防止用户不当心关闭网页。该事件的默认动作就是关闭当前窗口或文档。如果在监听函数中,调用了 event.preventDefault(),或者对事件对象的 returnValue 属性赋予一个非空的值,就会自动跳出一个确认框,让用户确认是否关闭网页。如果用户点击“取消”按钮,网页就不会关闭。监听函数所返回的字符串,会显示在确认对话框之中:

  window.addEventListener('beforeunload', function(event) {    if(event.preventDefault){      event.preventDefault();    } else {      event.returnValue = '你确认要离开吗?';    }  });

unload 与 load

unload 事件在窗口关闭或者 document 对象将要卸载时触发,发生在 window, body, frameset 等对象上面。它的触发顺序排在 beforeunload, pagehide 事件后面。unload 事件只在页面没有被浏览器缓存时才会触发,换言之,如果通过按下“前进/后退”导致页面卸载,并不会触发 unload 事件。当 unload 事件发生时,document 对象处于一个特殊状态。所有资源依然存在,但是对用户来说都不可见,UI互动(window.open, alert, confirm方法等)全部无效。这时即使抛出错误,也不能停止文档的卸载。

load事件在页面加载成功时触发,error事件在页面加载失败时触发。注意,页面从浏览器缓存加载,并不会触发load事件。

这两个事件实际上属于进度事件,不仅发生在 document 对象,还发生在各种外部资源上面。浏览网页就是一个加载各种资源的过程,图像(image), 样式表(style sheet), 脚本(script), 视频(video), 音频(audio), Ajax请求(XMLHttpRequest)等等。这些资源和document对象, window对象, XMLHttpRequestUpload对象,都会触发 load 事件和 error 事件。

pageshow 与 pagehide

pageshow事件,pagehide事件: 默认情况下,浏览器会在当前会话(session)缓存页面,当用户点击“前进/后退”按钮时,浏览器就会从缓存中加载页面。
pageshow 事件在页面加载时触发,包括第一次加载和从缓存加载两种情况。如果要指定页面每次加载(不管是不是从浏览器缓存)时都运行的代码,可以放在这个事件的监听函数。第一次加载时,它的触发顺序排在load事件后面。从缓存加载时,load 事件不会触发,因为网页在缓存中的样子通常是 load 事件的监听函数运行后的样子,所以不必重复执行。同理,如果是从缓存中加载页面,网页内初始化的 JavaScript 脚本(比如 DOMContentLoaded 事件的监听函数)也不会执行。pageshow 事件有一个 persisted 属性,返回一个布尔值。页面第一次加载时,这个属性是false;当页面从缓存加载时,这个属性是true。

document.onpageshow = function(event){}  if(event.persisted){    //如果存缓存加载  }}

同样的,将这个属性设为 true,就表示页面要保存在缓存中;设为 false ,表示网页不保存在缓存中,这时如果设置了 unload 事件的监听函数,该函数将在 pagehide 事件后立即运行。如果页面包含 frame ,则 frame 页面的 pageshow 事件和 pagehide 事件,都会在主页面之前触发。

DOMContentLoaded 和 readystatechange

DOMContentLoaded 事件当 HTML 文档下载并解析完成以后,就会在 document 对象上触发 DOMContentLoaded 事件。这时,仅仅完成了 HTML 文档的解析(整张页面的DOM生成),所有外部资源(样式表, 脚本, iframe等等)可能还没有下载结束。也就是说,这个事件比 load 事件,发生时间早得多。注意,网页的 JavaScript 脚本是同步执行的,所以定义 DOMContentLoaded 事件的监听函数,应该放在所有脚本的最前面。否则脚本一旦发生堵塞,将推迟触发 DOMContentLoaded 事件。此外,IE8 不支持 DOMContentLoaded 事件,可以使用 readystatechange 事件代替。

readystatechange 事件发生在 Document 对象和 XMLHttpRequest 对象,当它的 readyState 属性发生变化时触发。

其他文档级事件

上面重点提到了 DOMContentLoaded, readystatechange, pageshow, pagehide, unload, load 和 beforeunload 事件,此外还有一下事件:

onafterprint: 文档打印之后运行的脚本

onbeforeprint: 文档打印之前运行的脚本

onbeforeunload: 文档卸载之前运行的脚本(上文已涉及)

onerror: 在错误发生时运行的脚本

onhaschange: 当文档已改变时运行的脚本

onload: 页面结束加载之后触发(上文已涉及)

onmessage: 在消息被触发时运行的脚本

onoffline: 当文档离线时运行的脚本

ononline: 当文档上线时运行的脚本

onpagehide: 当窗口隐藏时运行的脚本(上文已涉及)

onpageshow: 当窗口成为可见时运行的脚本(上文已涉及)

onpopstate: 当窗口历史记录改变时运行的脚本

onredo: 当文档执行撤销(redo)时运行的脚本

onresize: 当浏览器窗口被调整大小时触发

onstorage: 在 Web Storage 区域更新后运行的脚本

onundo: 在文档执行 undo 时运行的脚本

onscroll: 事件在文档或文档元素滚动时执行脚本

鼠标事件 与 MouseEvent对象

new MouseEvent(typeArg, mouseEventInit);

内置的鼠标事件包括:

mousedown: 按下鼠标

mouseup: 鼠标抬起

click: 点击

dblclick: 双击

mousemove: 鼠标移动

mouseover: 鼠标移入,冒泡

mouseout: 鼠标移出,冒泡

mouseenter: 鼠标移入,不冒泡

mouseleave: 鼠标移出,不冒泡

contextmenu: 右键菜单

wheel: 滚轮事件

其具有如下常用属性:

altKey,ctrlKey,metaKey,shiftKey属性返回一个布尔值,表示鼠标事件发生时,是否按下某个键;

button 返回事件的鼠标键信息, 值为0(左键), 1或4(中键, 4为IE中的值),2(右键),可通过switch来选择执行分之);

buttons 属性返回一个3个比特位的值,表示同时按下了哪些键

clientX,clientY 返回鼠标位置相对于浏览器窗口左上角的坐标,单位为像素

screenX,screenY 返回鼠标位置相对于屏幕左上角的坐标,单位为像素

movementX,movementY 返回一个位移,单位为像素,表示当前位置与上一个 mousemove 事件之间的距离,在数值上:

currentEvent.movementX = currentEvent.screenX – previousEvent.screenX
currentEvent.movementY = currentEvent.screenY – previousEvent.screenY

relatedTarget属性返回事件的次要相关节点,即和target属性对应的节点,如: mouseout target 指将要离开的节点,relatedTarget 指将要进入的节点。对于那些没有次要相关节点的事件,该属性返回null

wheel 事件是与鼠标滚轮相关的事件,浏览器提供一个 WheelEvent 构造函数 new WheelEvent(typeArg, mouseEventInit)

deltaX: 返回一个数值,表示滚轮的水平滚动量

deltaY: 返回一个数值,表示滚轮的垂直滚动量

deltaZ: 返回一个数值,表示滚轮的Z轴滚动量

deltaMode: 返回一个数值,表示滚动的单位,适用于上面三个属性。0表示像素,1表示行,2表示页

键盘事件 KeyboardEvent 对象

构造函数 new KeyboardEvent(typeArg, KeyboardEventInit)

键盘事件包括keydown(按下键盘时触发该事件),keypress(只要按下的键并非Ctrl, Alt, Shift和Meta,就接着触发keypress事件), keyup(松开键盘时触发该事件)

altKey,ctrlKey,metaKey,shiftKey: 返回一个布尔值,表示是否按下对应的键

key: 返回一个字符串,表示按下的键名。如果同时按下一个控制键和一个符号键,则返回符号键的键名

keyCode: 返回按键的 ASCII 码,注意: 这里是不区分大小写的,A键不论输出 A 还是 a keyCode 都是68。在 IE 中使用 witch 属性

进度事件 ProgressEvent对象

new ProgressEvent(type, {  lengthComputable: aBooleanValue,    // false as default  loaded: aNumber,                    // 0 as default  total: aNumber                      // 0 as default});

进度事件用来描述一个事件进展的过程,比如XMLHttpRequest对象发出的HTTP请求的过程, 浏览器中5种常用的事件解析, , , , 加载外部资源的过程,包括下载和上传。通常包括以下事件:

abort事件: 当进度事件被中止时触发。如果发生错误,导致进程中止,不会触发该事件。

error事件: 由于错误导致资源无法加载时触发,不会冒泡。error 事件的监听函数最好放在如 img 元素的 HTML 属性中。

load事件: 进度成功结束时触发。

loadstart事件: 进度开始时触发。

loadend事件: 进度停止时触发,发生顺序排在error事件abort事件load事件后面。loadend事件的监听函数可以用来取代abort事件/load事件/error事件的监听函数,loadend事件本身不提供关于进度结束的原因,但可以用它来做所有进度结束场景都需要做的一些操作。

progress事件: 当操作处于进度之中,由传输的数据块不断触发。

timeout事件: 进度超过限时触发

这类事件具有以下属性:

lengthComputable: 返回一个布尔值,表示当前进度是否具有可计算的长度。如果为false,就表示当前进度无法测量。

total: 返回一个数值,表示当前进度的总长度。如果是通过 HTTP 下载某个资源,表示内容本身的长度,不含 HTTP 头部的长度。如果 lengthComputable 属性为 false,则 total 属性就无法取得正确的值。

loaded: 返回一个数值,表示当前进度已经完成的数量。该属性除以total属性,就可以得到目前进度的百分比。

//进度计算if (e.lengthComputable){  var percentComplete = e.loaded / e.total;}

拖拽事件 DragEvent 对象

new DragEvent(type, DragEventInit);

拖拽指的是,用户在某个对象上按下鼠标键不放,拖动它到另一个位置,然后释放鼠标键,将该对象放在那里。拖拽的对象有好几种,包括 Element 节点, 图片, 链接, 选中的文字等等。在 HTML 网页中,除了 Element 节点默认不可以拖拽,其他(图片, 链接, 选中的文字)都是可以直接拖拽的。为了让 Element 节点可拖拽,可以将该节点的 draggable 属性设为 true。draggable 属性可用于任何 Element 节点,但是图片(img 元素)和链接(a 元素)不加这个属性,就可以拖拽。对于它们,用到这个属性的时候,往往是将其设为 false,防止拖拽。注意,一旦某个 Element 节点的 draggable 属性设为 true,就无法再用鼠标选中该节点内部的文字或子节点了。

当Element节点或选中的文本被拖拽时,就会持续触发拖拽事件,包括以下一些事件:

drag事件: 拖拽过程中,在被拖拽的节点上持续触发。

dragstart事件: 拖拽开始时在被拖拽的节点上触发,该事件的target属性是被拖拽的节点。通常应该在这个事件的监听函数中,指定拖拽的数据。

dragend事件: 拖拽结束时(释放鼠标键或按下escape键)在被拖拽的节点上触发,该事件的target属性是被拖拽的节点。它与dragStart事件,在同一个节点上触发。不管拖拽是否跨窗口,或者中途被取消,dragend事件总是会触发的。

dragenter事件: 拖拽进入当前节点时,在当前节点上触发,该事件的target属性是当前节点。通常应该在这个事件的监听函数中,指定是否允许在当前节点放下(drop)拖拽的数据。如果当前节点没有该事件的监听函数,或者监听函数不执行任何操作,就意味着不允许在当前节点放下数据。在视觉上显示拖拽进入当前节点,也是在这个事件的监听函数中设置。

dragover事件: 拖拽到当前节点上方时,在当前节点上持续触发,该事件的target属性是当前节点。该事件与dragenter事件基本类似,默认会重置当前的拖拽事件的效果(DataTransfer对象的dropEffect属性)为none,即不允许放下被拖拽的节点,所以如果允许在当前节点drop数据,通常会使用preventDefault方法,取消重置拖拽效果为none。

dragleave事件: 拖拽离开当前节点范围时,在当前节点上触发,该事件的target属性是当前节点。在视觉上显示拖拽离开当前节点,就在这个事件的监听函数中设置。

drop事件: 被拖拽的节点或选中的文本,释放到目标节点时,在目标节点上触发。注意,如果当前节点不允许drop,即使在该节点上方松开鼠标键,也不会触发该事件。如果用户按下Escape键,取消这个操作,也不会触发该事件。该事件的监听函数负责取出拖拽数据,并进行相关处理。

关于拖拽事件,有以下几点注意事项:

拖拽过程只触发以上这些拖拽事件,尽管鼠标在移动,但是鼠标事件不会触发。

将文件从操作系统拖拽进浏览器,不会触发 dragStart 和 dragend 事件。

dragenter 和 dragover 事件的监听函数,用来指定可以放下(drop)拖拽的数据。由于网页的大部分区域不适合作为 drop 的目标节点,所以这两个事件的默认设置为当前节点不允许 drop。如果想要在目标节点上 drop 拖拽的数据,首先必须阻止这两个事件的默认行为,或者取消这两个事件。

//或

拖拽事件用一个 DragEvent 对象表示,该对象继承 MouseEvent 对象,DragEvent 对象只有一个独有的属性 dataTransfer,其他都是继承的属性。dataTransfer 属性用来读写拖拽事件中传输的数据,所有的拖拽事件都有一个 dataTransfer 属性,用来保存需要传递的数据,这个属性的值是一个 DataTransfer 对象。拖拽的数据保存两方面的数据: 数据的种类(又称格式)和数据的值。数据的种类是一个MIME字符串,比如 text/plain 或者 image/jpg,数据的值是一个字符串;

dataTransfer 对象的属性的值是一个对象,其中包括以下属性:

dropEffect 属性: 设置放下(drop)被拖拽节点时的效果,可能的值包括 copy(复制被拖拽的节点), move(移动被拖拽的节点), link(创建指向被拖拽的节点的链接), none(无法放下被拖拽的节点)。设置除此以外的值,都是无效的。

effectAllowed 属性: 设置本次拖拽中允许的效果,可能的值包括 copy, move, link, copyLink, copyMove, linkMove, all, none, uninitialized(默认值,等同于 all)。如果某种效果是不允许的,用户就无法在目标节点中达成这种效果。

files 属性: 是一个 FileList 对象,包含一组本地文件,可以用来在拖拽操作中传送。如果本次拖拽不涉及文件,则属性为空的 FileList 对象。通过files属性读取拖拽文件的信息。如果想要读取文件内容,就要使用 FileReader 对象。

types 属性: 是一个数组,保存每一次拖拽的数据格式,如’text/uri-list’

setData() 方法: 用来设置事件所带有的指定类型的数据。它接受两个参数,第一个是数据类型,第二个是具体数据。如果指定的类型在现有数据中不存在,则该类型将写入types属性;如果已经存在,在该类型的现有数据将被替换。

event.dataTransfer.setData("text/plain", "Text to drag");

getData() 方法接受一个字符串(表示数据类型)作为参数,返回事件所带的指定类型的数据(通常是用 setData 方法添加的数据)。如果指定类型的数据不存在,则返回空字符串。

event.dataTransfer.getData(types[0]);

clearData() 方法接受一个字符串(表示数据类型)作为参数,删除事件所带的指定类型的数据。如果没有指定类型,则删除所有数据。如果指定类型不存在,则原数据不受影响。

event.dataTransfer.clearData("text/uri-list");

setDragImage() 可以用来自定义这张图片,它接受三个参数,第一个是img图片元素或者canvas元素,如果省略或为null则使用被拖动的节点的外观,第二个和第三个参数为鼠标相对于该图片左上角的横坐标和右坐标。

event.dataTransfer.setDragImage(img, 0, 0);

触摸事件

 new Touch(touchInit);

触摸事件包括以下5种:

touchstart: 用户接触触摸屏时触发,它的 target 属性返回发生触摸的 Element 节点(IE10+中使用 mspointerdown 事件);

touchend: 用户不再接触触摸屏时(或者移出屏幕边缘时)触发,它的 target 属性与 touchstart 事件的 target 属性是一致的,它的 changedTouches 属性返回一个TouchList对象,包含所有不再触摸的触摸点(Touch对象)(IE10+中使用 mspointerup 事件);

touchmove: 用户移动触摸点时触发,它的 target 属性与 touchstart 事件的 target 属性一致。如果触摸的半径, 角度, 力度发生变化,也会触发该事件。(IE10+中使用 mspointermove 事件);

touchenter: 当触点进入某个 element 时触发。此事件没有冒泡过程。(IE10+中使用 mspointerover 事件);

touchleave: 当触点离开某个 element 时触发。此事件没有冒泡过程。(IE10+中使用 mspointerout 事件);

touchcancel: 当触点由于某些原因被中断时触发。有几种可能的原因如下(具体的原因根据不同的设备和浏览器有所不同):(IE10+中没有对应事件);

由于某个事件取消了触摸: 例如触摸过程被一个模态的弹出框或电话打断;

触点离开了文档窗口,而进入了浏览器的界面元素, 插件或者其他外部内容区域;

当用户产生的触点个数超过了设备支持的个数,从而导致 TouchList 中最早的 Touch 对象被取消。

触摸 API 由三个对象组成。每个 Touch 对象代表一个触点; 每个触点都由其位置,大小,形状,压力大小,和目标 element 描述。 TouchList 对象代表多个触点的一个列表。具体包括以下属性:

identifier 属性: 表示touch实例的独一无二的识别符。它在整个触摸过程中保持不变(IE10+中使用 pointerId 属性);

screenX/screenY 属性: 分别表示触摸点相对于屏幕左上角的横坐标和纵坐标,与页面是否滚动无关;

clientX/clientY 属性: 分别表示触摸点相对于浏览器视口左上角的横坐标和纵坐标,与页面是否滚动无关;

pageX/pageY 属性: 分别表示触摸点相对于当前页面左上角的横坐标和纵坐标,包含了页面滚动带来的位移;

radiusX/radiusY 属性: 分别返回触摸点周围受到影响的椭圆范围的X轴和Y轴,单位为像素;

rotationAngle 属性: 表示触摸区域的椭圆的旋转角度,单位为度数,在0到90度之间。指尖接触屏幕,触摸范围会形成一个椭圆,这三个属性就用来描述这个椭圆区域(IE10+中使用 rotation 属性);

force 属性: 返回一个0到1之间的数值,表示触摸压力。0代表没有压力,1代表硬件所能识别的最大压力(IE10+中使用 pressure 属性,取值0 – 255);

target 属性: 返回一个Element节点,代表触摸发生的那个节点。当这个触点最开始被跟踪时(在 touchstart 事件中), 触点位于的HTML元素.哪怕在触点移动过程中, 触点的位置已经离开了这个元素的有效交互区域, 或者这个元素已经被从文档中移除. 需要注意的是, 如果这个元素在触摸过程中被移除, 这个事件仍然会指向它, 但是不会再冒泡这个事件到 window 或 document 对象. 因此, 如果有元素在触摸过程中可能被移除, 最佳实践是将触摸事件的监听器绑定到这个元素本身, 防止元素被移除后, 无法再从它的上一级元素上侦测到从该元素冒泡的事件. 只读属性.

altKey/ctrlKey/metaKey/shiftKey 都为只读属性: 返回一个布尔值,表示触摸的同时,是否按下某个键

changedTouches 属性: 返回一个 TouchList 对象,包含了由当前触摸事件引发的所有Touch对象(即相关的触摸点)。它包含了代表所有从上一次触摸事件到此次事件过程中,状态发生了改变的触点的 Touch 对象。只读属性。

targetTouches属性: 返回一个 TouchList 对象,包含了触摸的目标 Element 节点内部,所有仍然处于活动状态的触摸点。

touches 属性返回一个 TouchList 对象(类数组的对象),包含了所有当前接触触摸平面的触点的 Touch 对象,无论它们的起始于哪个 element 上,也无论它们状态是否发生了变化。只读属性

type 属性: 指此次触摸事件的类型。

target属性: 此次触摸事件的目标 element 。这个目标元素对应 TouchEvent.changedTouches 中的触点的起始元素(在之后的事件类型中有说明),但是请注意: 此次事件中其他的触点的起始元素可能有所不同。以防万一,应使用和每一个单独触点相关联的目标 。

以下是 IE10+ 中的其他属性:

hwTimestamp: 创建事件时间(毫秒);

isPrimary: 表示该时间是否是主事件;

pointerType: 取值自 event.MSPOINTER_TYPE_TOUCH, event.MAPOINTER_TYPE_PEN, event.MSPOINTER_TYPE_MOUSE, 表示触摸设备;

tilt[X|Y]: 笔的倾斜程度;

举一个简单例子:

function handleMove(evt) {  evt.preventDefault(); // 阻止浏览器继续处理触摸事件,也阻止发出鼠标事件  var touches = evt.changedTouches;  for (var i = 0; i < touches.length; i++) {    var id = touches[i].identifier;    var touch = touches.identifiedTouch(id);    console.log(touch.pageX, touch.pageY);  }}

对于跨平台交互,我封装了一个 tap相关事件如下:

//以下代码并未兼容低版本 IEfunction addTapListener(node, callback){  var startEvent = window.onmousedown ? window.onmspointerdown ? 'mspointerdow' : 'mousedown' : 'touchstart';  var event = window.onclick ? 'click' : 'touch';  var endEvent = window.onmouseup ? 'mouseup' : 'touchend';  node.addEventListener(startEvent, function(e){    var tap = document.createEvent('CustomEvent');    tap.initCustomEvent('tapstart', true, true, null);    node.dispatchEvent(tap);  });  node.addEventListener(event, function(e){    var tap = document.createEvent('CustomEvent');    tap.initCustomEvent('tap', true, true, null);    node.dispatchEvent(tap);  });  node.addEventListener(endEvent, function(e){    var tap = document.createEvent('CustomEvent');    tap.initCustomEvent('tapend', true, true, null);    node.dispatchEvent(tap);  });  node.addEventListener('tap', callback);}

当然本文仅仅列举了一些常用事件,其实事件还有很多,本文会在必要的时候继续更新,但即便如此也不可能穷尽所有的事件,比如还有动画事件: animationstart, animation, animationend 等等。

相关推荐:

解析javascript 浏览器关闭事件_javascript技巧

JavaScript中的跨浏览器事件(图文教程)

以上就是浏览器中5种常用的事件解析的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1547012.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月21日 18:44:30
下一篇 2025年12月21日 18:44:52

相关推荐

  • 学会从头开始学习CSS,掌握制作基本网页框架的技巧

    从零开始学习CSS,掌握网页基本框架制作技巧 前言: 在现今互联网时代,网页设计和开发是一个非常重要的技能。而学习CSS(层叠样式表)是掌握网页设计的关键之一。CSS不仅可以为网页添加样式和布局,还可以为用户呈现独特且具有吸引力的页面效果。在本文中,我将为您介绍一些基本的CSS知识,以及一些常用的代…

    2025年12月24日
    200
  • 揭秘Web标准涵盖的语言:了解网页开发必备的语言范围

    在当今数字时代,互联网成为了人们生活中不可或缺的一部分。作为互联网的基本构成单位,网页承载着我们获取和分享信息的重要任务。而网页开发作为一门独特的技术,离不开一些必备的语言。本文将揭秘Web标准涵盖的语言,让我们一起了解网页开发所需的语言范围。 首先,HTML(HyperText Markup La…

    2025年12月24日
    000
  • 揭开Web开发的语言之谜:了解构建网页所需的语言有哪些?

    Web标准中的语言大揭秘:掌握网页开发所需的语言有哪些? 随着互联网的快速发展,网页开发已经成为人们重要的职业之一。而要成为一名优秀的网页开发者,掌握网页开发所需的语言是必不可少的。本文将为大家揭示Web标准中的语言大揭秘,介绍网页开发所需的主要语言。 HTML(超文本标记语言)HTML是网页开发的…

    2025年12月24日
    400
  • 常用的网页开发语言:了解Web标准的要点

    了解Web标准的语言要点:常见的哪些语言应用在网页开发中? 随着互联网的不断发展,网页已经成为人们获取信息和交流的重要途径。而要实现一个高质量、易用的网页,离不开一种被广泛接受的Web标准。Web标准的制定和应用,涉及到多种语言和技术,本文将介绍常见的几种语言在网页开发中的应用。 首先,HTML(H…

    2025年12月24日
    000
  • 网页开发中常见的Web标准语言有哪些?

    探索Web标准语言的世界:网页开发中常用的语言有哪些? 在现代社会中,互联网的普及程度越来越高,网页已成为人们获取资讯、娱乐、交流的重要途径。而网页的开发离不开各种编程语言的应用和支持。在这个虚拟世界的网络,有许多被广泛应用的标准化语言,用于为用户提供优质的网页体验。本文将探索网页开发中常用的语言,…

    2025年12月24日
    000
  • 深入探究Web标准语言的范围,涵盖了哪些语言?

    Web标准是指互联网上的各个网页所需遵循的一系列规范,确保网页在不同的浏览器和设备上能够正确地显示和运行。这些标准包括HTML、CSS和JavaScript等语言。本文将深入解析Web标准涵盖的语言范围。 首先,HTML(HyperText Markup Language)是构建网页的基础语言。它使…

    2025年12月24日
    000
  • 项目实践:如何结合CSS和JavaScript打造优秀网页的经验总结

    项目实践:如何结合CSS和JavaScript打造优秀网页的经验总结 随着互联网的快速发展,网页设计已经成为了各行各业都离不开的一项技能。优秀的网页设计可以给用户留下深刻的印象,提升用户体验,增加用户的黏性和转化率。而要做出优秀的网页设计,除了对美学的理解和创意的运用外,还需要掌握一些基本的技能,如…

    2025年12月24日
    200
  • CSS 超链接属性解析:text-decoration 和 color

    CSS 超链接属性解析:text-decoration 和 color 超链接是网页中常用的元素之一,它能够在不同页面之间建立连接。为了使超链接在页面中有明显的标识和吸引力,CSS 提供了一些属性来调整超链接的样式。本文将重点介绍 text-decoration 和 color 这两个与超链接相关的…

    2025年12月24日
    000
  • 学完HTML和CSS之后我应该做什么?

    网页开发是一段漫长的旅程,但是掌握了HTML和CSS技能意味着你已经赢得了一半的战斗。这两种语言对于学习网页开发技能来说非常重要和基础。现在不可或缺的是下一个问题,学完HTML和CSS之后我该做什么呢? 对这些问题的答案可以分为2-3个部分,你可以继续练习你的HTML和CSS编码,然后了解在学习完H…

    2025年12月24日
    000
  • 聊聊怎么利用CSS实现波浪进度条效果

    本篇文章给大家分享css 高阶技巧,介绍一下如何使用css实现波浪进度条效果,希望对大家有所帮助! 本文是 CSS Houdini 之 CSS Painting API 系列第三篇。 现代 CSS 之高阶图片渐隐消失术现代 CSS 高阶技巧,像 Canvas 一样自由绘图构建样式! 在上两篇中,我们…

    2025年12月24日 好文分享
    200
  • 巧用距离、角度及光影制作炫酷的 3D 文字特效

    如何利用 css 实现3d立体的数字?下面本篇文章就带大家巧用视觉障眼法,构建不一样的 3d 文字特效,希望对大家有所帮助! 最近群里有这样一个有意思的问题,大家在讨论,使用 CSS 3D 能否实现如下所示的效果: 这里的核心难点在于,如何利用 CSS 实现一个立体的数字?CSS 能做到吗? 不是特…

    2025年12月24日 好文分享
    000
  • CSS高阶技巧:实现图片渐隐消的多种方法

    将专注于实现复杂布局,兼容设备差异,制作酷炫动画,制作复杂交互,提升可访问性及构建奇思妙想效果等方面的内容。 在兼顾基础概述的同时,注重对技巧的挖掘,结合实际进行运用,欢迎大家关注。 正文从这里开始。 在过往,我们想要实现一个图片的渐隐消失。最常见的莫过于整体透明度的变化,像是这样: 立即学习“前端…

    2025年12月24日 好文分享
    000
  • 看看这些前端面试题,带你搞定高频知识点(一)

    每天10道题,100天后,搞定所有前端面试的高频知识点,加油!!!,在看文章的同时,希望不要直接看答案,先思考一下自己会不会,如果会,自己的答案是什么?想过之后再与答案比对,是不是会更好一点,当然如果你有比我更好的答案,欢迎评论区留言,一起探讨技术之美。 面试官:给定一个元素,如何实现水平垂直居中?…

    2025年12月24日 好文分享
    300
  • 看看这些前端面试题,带你搞定高频知识点(二)

    每天10道题,100天后,搞定所有前端面试的高频知识点,加油!!!,在看文章的同时,希望不要直接看答案,先思考一下自己会不会,如果会,自己的答案是什么?想过之后再与答案比对,是不是会更好一点,当然如果你有比我更好的答案,欢迎评论区留言,一起探讨技术之美。 面试官:页面导入样式时,使用 link 和 …

    2025年12月24日 好文分享
    200
  • 看看这些前端面试题,带你搞定高频知识点(三)

    每天10道题,100天后,搞定所有前端面试的高频知识点,加油!!!,在看文章的同时,希望不要直接看答案,先思考一下自己会不会,如果会,自己的答案是什么?想过之后再与答案比对,是不是会更好一点,当然如果你有比我更好的答案,欢迎评论区留言,一起探讨技术之美。 面试官:清除浮动有哪些方式? 我:呃~,浮动…

    2025年12月24日 好文分享
    000
  • 看看这些前端面试题,带你搞定高频知识点(四)

    每天10道题,100天后,搞定所有前端面试的高频知识点,加油!!!,在看文章的同时,希望不要直接看答案,先思考一下自己会不会,如果会,自己的答案是什么?想过之后再与答案比对,是不是会更好一点,当然如果你有比我更好的答案,欢迎评论区留言,一起探讨技术之美。 面试官:请你谈一下自适应(适配)的方案 我:…

    2025年12月24日 好文分享
    000
  • 看看这些前端面试题,带你搞定高频知识点(五)

    每天10道题,100天后,搞定所有前端面试的高频知识点,加油!!!,在看文章的同时,希望不要直接看答案,先思考一下自己会不会,如果会,自己的答案是什么?想过之后再与答案比对,是不是会更好一点,当然如果你有比我更好的答案,欢迎评论区留言,一起探讨技术之美。 面试官:css 如何实现左侧固定 300px…

    2025年12月24日 好文分享
    000
  • css实现登录按钮炫酷效果(附代码实例)

    今天在网上看到一个炫酷的登录按钮效果;初看时感觉好牛掰;但是一点一点的抛开以后发现,并没有那么难;我会将全部代码贴出来;如果有不对的地方,大家指点一哈。 分析 我们抛开before不谈的话;其实原理和就是通过背景大小以及配合位置达到颜色渐变的效果。 text-transform: uppercase…

    2025年12月24日
    000
  • CSS flex布局属性:align-items和align-content的区别

    在用flex布局时,发现有两个属性功能好像有点类似:align-items和align-content,乍看之下,它们都是用于定义flex容器中元素在交叉轴(主轴为flex-deriction定义的方向,默认为row,那么交叉轴跟主轴垂直即为column,反之它们互调,flex基本的概念如下图所示)…

    2025年12月24日 好文分享
    000
  • 手把手教你用 transition 实现短视频 APP的点赞动画

    怎么使用纯 css 实现有趣的点赞动画?下面本篇文章就带大家了解一下巧妙借助 transition实现点赞动画的方法,希望对大家有所帮助! 在各种短视频界面上,我们经常会看到类似这样的点赞动画: 非常的有意思,有意思的交互会让用户更愿意进行互动。 那么,这么有趣的点赞动画,有没有可能使用纯 CSS …

    2025年12月24日 好文分享
    000

发表回复

登录后才能评论
关注微信