• 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);" onclick="mapObj.zoomOut();">缩小</a>

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

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

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

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

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

    <a href="#" onclick="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;" onclick="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);" onclick="mapObj.zoomIn();">放大</a></td>

    </tr>

    </table>

    </div>

    效果:

    JS中的a标签 - ☆無心﹎ - 无心之过
     
     
    文章来源:http://blog.163.com/hdyl_8603/blog/static/34622429201321241215120/
  • 相关阅读:
    数组删除元素注意事项
    点击下拉菜单以外的区域,关闭弹窗
    webpack学习笔记(六)优化
    webpack学习笔记(五)
    webpack学习笔记(四)
    webpack学习笔记(三)
    webpack学习笔记(二)
    es6 笔记
    vue学习笔记——组件的优化
    vue学习笔记——路由
  • 原文地址:https://www.cnblogs.com/hjbky/p/6217369.html
Copyright © 2020-2023  润新知