整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

html 页面内锚点定位及跳转方法总结

目中经常会出现点击跳转锚点的方法,比如给一个a标签一个href=“#锚点”,然后要跳的锚点给个id=“锚点”,这样就实现简单的跳转,但是这样在url地址栏后面都会出现一个诸如www.csdn.net#锚点,然后你点击给一次后退都是退回上一个选择的锚点url,这里总结一些跳转锚点的方法。

第一种方法,也是最简单的方法是锚点用<a>标签,在href属性中写入DIV的id。如下:

<!DOCTYPE html>

<html>

<head>

<style>

div {

height: 800px;

width: 400px;

border: 2px solid black;

}

h2 {

position: fixed;

margin:50px 500px;

}

</style>

</head>

<body>

<h2>

<a href="#div1">to div1</a>

<a href="#div2">to div2</a>

<a href="#div3">to div3</a>

</h2>

<div id="div1">div1</div>

<div id="div2">div2</div>

<div id="div3">div3</div>

</body>

</html>

这种方法的缺点是点击锚点之后,浏览器的URL会发生变化,如果刷新可能会出现问题。

第二种方法是在js事件中通过window.location.hash="divId"跳转,但地址也会发生变化,感觉跟第一种方法没区别,甚至更麻烦。

第三种方法是用animate属性,当点击锚点后,页面滚动到相应的DIV。接着上面的代码,具体添加如下代码:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.8.0.min.js"></script>

<script type="text/javascript">

$(document).ready(function() {

$("#div1Link").click(function() {

$("html, body").animate({

scrollTop: $("#div1").offset().top }, {duration: 500,easing: "swing"});

return false;

});

$("#div2Link").click(function() {

$("html, body").animate({

scrollTop: $("#div2").offset().top }, {duration: 500,easing: "swing"});

return false;

});

$("#div3Link").click(function() {

$("html, body").animate({

scrollTop: $("#div3").offset().top }, {duration: 500,easing: "swing"});

return false;

});

});

</script>

注意:运行上面的脚本的之前,先将为锚点增加相应的id,同时去掉href属性。

$("html, body")可以替换为响应的div,如果不起作用,试着给该div增加overflow:scroll属性。

另外,脚本可以进一步优化,自己来试试

这样做的好处是:URL地址不会变,同时点击锚点时会自动响应scroll事件,不需要重新绑定。

缺点是:如果页面复杂的话,偏移值可能会发生变化需要算法辅助。

第四种方法是用js的srollIntoView方法,直接用:

document.getElementById("divId").scrollIntoView();

比如:

document.querySelector("#roll1").onclick = function(){

document.querySelector("#roll1_top").scrollIntoView(true);

}

这里就是点击id是#roll1的元素可以滚动到id是#roll1_top的地方,这里的#roll1和#roll1_top最好是一一对应的,

这种方法的好处,是URL不会变,同时能够响应相应的scroll事件,不需要算法什么的。代码如下:

<html>

<head>

<title>HTML5_ScrollInToView方法</title>

<meta charset="utf-8">

<script type="text/javascript">

window.onload = function(){

/*

如果滚动页面也是DOM没有解决的一个问题。为了解决这个问题,浏览器实现了一下方法,

以方便开发人员如何更好的控制页面的滚动。在各种专有方法中,HTML5选择了scrollIntoView()

作为标准方法。

scrollIntoView()可以在所有的HTML元素上调用,通过滚动浏览器窗口或某个容器元素,

调用元素就可以出现在视窗中。如果给该方法传入true作为参数,或者不传入任何参数,那么

窗口滚动之后会让调动元素顶部和视窗顶部尽可能齐平。如果传入false作为参数,调用元素

会尽可能全部出现在视口中(可能的话,调用元素的底部会与视口的顶部齐平。)不过顶部

不一定齐平,例如:

//让元素可见

document.forms[0].scrollIntoView();

当页面发生变化时,一般会用这个方法来吸引用户注意力。实际上,为某个元素设置焦点也

会导致浏览器滚动显示获得焦点的元素。

支持该方法的浏览器有 IE、Firefox、Safari和Opera。

*/

document.querySelector("#roll1").onclick = function(){

document.querySelector("#roll_top").scrollIntoView(false);

}

document.querySelector("#roll2").onclick = function(){

document.querySelector("#roll_top").scrollIntoView(true);

}

}

</script>

<style type="text/css">

#myDiv{

height:900px;

background-color:gray;

}

#roll_top{

height:900px;

background-color:green;

color:#FFF;

font-size:50px;

position:relative;

}

#bottom{

position:absolute;

display:block;

left;0;bottom:0;

}

</style>

</head>

<body>

<button id="roll1">scrollIntoView(false)</button>

<button id="roll2">scrollIntoView(true)</button>

<div id="myDiv"></div>

<div id="roll_top">

scrollIntoView(ture)元素上边框与视窗顶部齐平

<span id="bottom">scrollIntoView(false)元素下边框与视窗底部齐平</span>

</div>

</body>

</html>

个人建议使用第四种方法。

、html的介绍

1.1 html的定义

HTML 的全称为:HyperText Mark-up Language, 指的是超文本标记语言。标记:就是标签, <标签名称></标签名称>,比如:<html></html>、<h1></h1>等,标签大多数都是成对出现的。

所谓超文本,有两层含义:

  1. 因为网页中还可以图片、视频、音频等内容(超越文本限制)
  2. 它还可以在网页中跳转到另一个网页,与世界各地主机的网页链接(超链接文本)

1.2 html的作用

html是用来开发网页的,它是开发网页的语言。

1.3 小结

  • html是开发网页的语言
  • html中的标签大多数都是成对出现的, 格式: <标签名>

二、html的基本结构

2.1 结构代码

<!DOCTYPE html>
<html>
   <head>            
       <meta charset="UTF-8">
       <title>网页标题</title>
   </head>
   <body>
        网页显示内容
   </body>
</html>
  1. 第一行<!DOCTYPE html>是文档声明, 用来指定页面所使用的html的版本, 这里声明的是一个html5的文档。
  2. <html>...</html>标签是开发人员在告诉浏览器,整个网页是从<html>这里开始的,到html结束,也就是html文档的开始和结束标签。
  3. <head>...</head>标签用于定义文档的头部,是负责对网页进行设置标题、编码格式以及引入css和js文件的。
  4. <body>...</body>标签是编写网页上显示的内容。

2.2 浏览网页文件

网页文件的后缀是.html或者.htm, 一个html文件就是一个网页,html文件用编辑器打开显示的是文本,可以用文本的方式编辑它,如果用浏览器打开,浏览器会按照标签描述内容将文件渲染成网页。

2.3 小结

三、vscode的基本使用

3.1 vscode 的基本介绍

全拼是 Visual Studio Code (简称 VS Code) 是由微软研发的一款免费、开源的跨平台代码编辑器,目前是前端(网页)开发使用最多的一款软件开发工具。

3.2 vscode 的安装

  1. 下载网址: https://code.visualstudio.com/Download
  2. 选择对应的安装包进行下载:


  1. 根据下载的安装包双击进行安装即可,当然为了更好的使用 vscode 还可以安装对应的插件。

3.3 vscode 的插件安装

插件名说明Chinese (Simplified) Language Pack for VS Code中文(简体)汉化包open in browser右击在浏览器打开html

  1. 汉化插件安装

  1. open in browser插件安装


  1. 注意: 如果在vscode打开的html文档中右击没有出现 open in browser 类型的选项,需要把当前打开的文件关掉,重新打开这个文件就好了。

3.4 vscode 的插件卸载

点击对应安装的插件,然后再点击卸载按钮即可。

3.5 vscode 的使用

  1. 打开文件夹创建文件


  1. 快速创建html文档的基本结构


  1. 右击在浏览器打开html文档


3.6 设置字体大小


3.7 设置颜色主题


3.8 设置默认浏览器[可选]

  1. 可以根据自己的需要设置默认使用的浏览器


3.9 小结

  • vscode 是由微软研发的一款免费、开源的跨平台代码编辑器
  • 通过资源管理器打开文件夹创建HTML文件,编写 HTML 代码
  • 可以根据需要安装对应的插件
  • 可以设置字体大小和颜色主题

据中文语义,按顺序依次点击图中文字,语义理解能力结合行为轨迹。适用于安全要求较高的业务场景


HTML语序点选


Python语序点选


Jave语序点选


PHP语序点选


C#语序点选


可以调整语序点选验证码的样式:


全部内容的素材地址:凯格行为验证码(KgCaptcha)滑动拼图验证,无感验证码,文字点选验证码,凯格云盾