博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
href的那些事
阅读量:6004 次
发布时间:2019-06-20

本文共 1385 字,大约阅读时间需要 4 分钟。

看个问题<a href="">test</a>,此时href的值是什么呢?带着这样的疑问,开始今天的话题‘href的那些事’。

问题分析

为什么会有这个问题呢?

上周在项目中,msui会对页面a标签绑定些事件,会用到href内容。href=""这么写,就会一直报错。因为浏览器此时获取到的href的值当前页面绝对路径。此时就会导致msui内部一直报错。

href的定义

The href attribute on a and area elements must have a value that is a valid URL potentially surrounded by spaces.

Note:The href attribute on a and area elements is not required; when those elements do not have href attributes they do not create hyperlinks.

翻译过来大概的意思:

a和area标签上的href属性,必须是一个有效的RUI地址

a和area标签不一定有href属性,没有href就不会触发超链接的特点

RUL

A string is a valid non-empty URL if it is a valid URL but it is not the empty string.

A string is a valid URL potentially surrounded by spaces if, after stripping leading and trailing whitespace from it, it is a valid URL.
A string is a valid non-empty URL potentially surrounded by spaces if, after stripping leading and trailing whitespace from it, it is a valid non-empty URL.

挺拗口的,翻译不出来了!enter description here

可以理解其中一点就是一个合法的URL不能为空。看来这个URL可以单独做个专题学习了。

解决问题

从href和URL上的定义就能很好的解决最开始的问题了。href=""这种写法是不合理的,浏览器自身会对此情况做些兼容,默认是页面的绝对地址了。

继续深挖href

href内容不仅仅只能是表现成链接,还有很多种用法。

锚点

头部

这种方式经常用于定位。相信很多人都知道这种用法。

script

我相信很多页面上有大量的这种代码。用href来执行脚本。

邮件

发邮件给我

tel电话

打电话给我

sms信息

发信息给我

除此之外,还支持ftp,file等。

下载文件

最后还有个技巧就是利用href来下载文件,这个是html5新增的。

最近有个需求,考虑通过前端来下载表格数据。

利用href和download属性。

这里只要将URL表现成数据格式"data:text/csv;charset=utf-8,\ufeff"+表格数据。这个等完成之后,再写个详细点的教程。

总结

写在最后,对于href的事情还不完整,欢迎补充补充。

原文地址

转载地址:http://qldmx.baihongyu.com/

你可能感兴趣的文章
dubbo源码解析(三十六)集群——configurator
查看>>
vue+node全栈移动商城【5】-简单的筛选搜索功能
查看>>
大话css预编译处理(一)通读介绍篇
查看>>
高性能mongodb之执行计划
查看>>
拖拽上传功能的实现及原理
查看>>
vue
查看>>
区块链技术入门应用
查看>>
一起再看执行上下文/作用域链/原型链
查看>>
区块链 个人怎么赚钱 个人 如何投资区块链
查看>>
微信小程序设置上一页数据
查看>>
优酷KUX1080转码工具如何将KUX视频转换成MP4格式
查看>>
学习JavaScript的原型笔记
查看>>
工具的价值演进
查看>>
JavaWEB开发13——事务与连接池
查看>>
微信小程序picker实现的省市区三级联动
查看>>
前端工时评估
查看>>
Express 文档(目录)
查看>>
用mpvue实现一个简单的demo
查看>>
node笔记(二)-fs模块
查看>>
定时获取来自服务器的消息
查看>>