天天看点

HTML 锚点超链接

先介绍下场景:

我做了一个博客管理

首页界面如下:

HTML 锚点超链接

 标题是超链接,点击标题,进入博客详情页面:

HTML 锚点超链接

博客标题下面有一个"返回"超链接,点击回到博客列表,超链接代码:

HTML 锚点超链接

<a href="javascript:history.go(com.whuang.hsj.hrefclickcount)">返回</a>  

 说明:com.whuang.hsj.hrefclickcount的初始值为-1 ,

HTML 锚点超链接

后来我发现有的博客很长,从博客底部回到标题那儿,必须滚动鼠标滚老半天,太不人性化了.

于是我在博客底部增加了一个超链接"回到博客标题",如下:

HTML 锚点超链接

 但是问题出现了:

我点击"回到博客标题"超链接之后,再点击"返回",又会回到博客底部,我知道什么原因.

"回到博客标题"超链接 使用了锚点跳转,但是也属于跳转,跳转之后,博客底部就属于history了.所以再点击"返回"超链接就会回到history.

"回到博客标题"超链接实现代码:

HTML 锚点超链接

var ainput =document.createelement("a");    

                ainput.href="#title_loc";  

                ainput.innerhtml="回到博客标题";  

                ainput.classname="frontbloghrefclass";//class 样式,在单独的css文件中定义  

                ainput.onclick=function(){  

                    //注意:不论点击多少次"回到博客标题",go(-2)就可以回到博客列表  

                    com.whuang.hsj.hrefclickcount=-2;  

                }  

                contentdiv.appendchild(ainput);  

                var span333 =document.createelement("span");    

                span333.innerhtml="  | <a class=\"frontbloghrefclass\" href=\"javascript:history.go(com.whuang.hsj.hrefclickcount)\">返回博客列表</a>";  

                contentdiv.appendchild(span333);  

 锚点位置:

HTML 锚点超链接

怎么办呢?

解决方法:

"回到博客标题"超链接点击一次就把com.whuang.hsj.hrefclickcount 自减1,但是实际测试有问题,如果我点击两次以上,再点击"返回"页面就会回到很早的页面(不是博客列表页面).

最终解决方法:

HTML 锚点超链接

不论点击多少次"回到博客标题",go(-2)就可以回到博客列表  

HTML 锚点超链接

注意:

(2)博客详情页面的"返回博客列表"超链接和"返回"超链接相同.

继续阅读