JS中a标签的用法

<a>标签可定义锚。一个锚有两种用法:

  • 通过使用 href 属性,创建一个到另外一个文档的链接
  • 通过使用 name 或 id 属性,创建一个文档内部的书签 

如果是在 HTML 5 中,它定义为:超链接,用于从一个页面连接到另一个页面。此时,name 属性将由 id 代替。

它的属性在 W3school 中有详细说明。

一.链接:
通常格式:

<a href="url">text</a>

1. <a> 标签中调用 JS 方法(点击事件)

有以下几种方法:比如调用 mapObj.zoomOut(); 方法。

1)

<a href="mapObj.zoomOut();">缩小</a>

此种方法在传递 this 等参数时很容易出现问题,而且 javascript: 协议作为 <a> 的 href 属性时不仅会导致不必要的window.onbeforeunload 事件的触发,还会使 IE 中的 gif 动画图片停止播放。W3C 标准不推荐在 href 里面执行 javascript 语句。

2)

<a href="javascript:void(0);" οnclick="mapObj.zoomOut();">缩小</a>

这种方法是很多网站最常用的方法,也是最周全的方法,onclick 方法负责执行 JS 函数,而 void 是一个操作符,void(0) 返回undefined,地址不发生跳转。而且这种方法不会像第一种方法一样直接将 JS 方法暴露在浏览器的状态栏。3)

<a href="javascript:;" οnclick="mapObj.zoomOut();">缩小</a>

这种方法同 2),区别在于执行了一条空的 JS 代码。

4)

<a href="#" οnclick="mapObj.zoomOut();">缩小</a>

这种方法也是网上很常见的代码,# 是标签内置的一个方法,代表 top 的作用。所以用这种方法点击后网页返回到页面的最顶端,但是对于一个很长的页面而言,可能会在跳转时产生页面滑动的效果。

5)

<a href="#" οnclick="mapObj.zoomOut();">缩小</a>

这种方法点击执行了js函数后return false,页面不发生跳转,执行后还是在页面的当前位置。

2.在新页面跳转

在标签内添加 target="_blank" 属性,比如:

<a href="http://www.test.com/" target="_blank">test</a>

 target 属性是在何处打开目标 URL。取值如下:

  • _blank - 在一个新的未命名的窗口载入文档
  • _self - 在相同的框架或窗口中载入目标文档
  • _parent - 把文档载入父窗口或包含了超链接引用的框架的框架集
  • _top - 把文档载入包含该超链接的窗口,取代任何当前正在窗口中显示的框架 

3.<td>标签中添加超链接  只能在<td></td>标签内添加超链接,而不能在<tr></tr>中添加(不符合标准)。如果直接使用<a href></a>无效,可通过以下代码实现:

<td style="cursor:pointer;" οnclick="window.open('http://blog.163.com/hdyl_8603','_blank')">网址 :<a href=''>hdyl的blog</a></td>


二.书签:

一般用于同一文档内部的跳转。

被跳转的部分,添加标签:

<a name="test"></a>

添加链接的部分,添加标签:

<a href="#test"></a>

三.样式: 
如果需要修改某些内容的链接样式,可设置一个 class 而将这些内容放在这个 class 内。比如:

<head></head> 内设置样式:

<style type="text/css">
html,body{height:100%;margin:0;padding:0;font-size:15px;}
/*右键菜单样式*/
.triangle-border {
position:relative;
padding:15px;
border:2px solid #5a8f00;
color:#333;
background:#fff;
/* css3 */
-webkit-border-radius:10px;
-moz-border-radius:10px;
border-radius:10px;
}
/*右键菜单项样式,triangle-border 内的 <a> 标签样式*/

.triangle-border A:link{color:#009933;text-decoration:none;font-family:Microsoft YaHei}
.triangle-border A:visited{color:#009933;text-decoration:none;font-family:Microsoft YaHei}
.triangle-border A:active{color:#009933;text-decoration:none;font-family:Microsoft YaHei}
.triangle-border A:hover{color:#009933;text-decoration:none;font-family:Microsoft YaHei}
</style>

<body></body> 中应用:

<div class="triangle-border">

<table>

<tr>

<td><a href="javascript:void(0);" οnclick="mapObj.zoomIn();">放大</a></td>

</tr>

</table>

</div>

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值