超链接点击,打开新页面-rel属性妙用,但主要是危害性大
<p>
<a href="./target.html" target="_blank" rel="opener">目标页面</a>
</p>
-
target.html页面的JS:
const opener = window.opener; if (opener) { opener.location.hash = '#hack'; opener.document.body.insertAdjacentHTML('beforeend', '<span style="position:absolute;outline:solid red;font-size:100px;left:calc(50% - 2.5em);top:208px;">哈哈哈,💩</span>'); } 设置`rel="noopener"` ,这样新页面无法通过 `window.opener` 访问原页面,防止了钓鱼攻击。如果超链接按钮添加了rel属性,那么可以在新开页面获取到原页面的信息,甚至操作一些非法数据document.referrer
在JavaScript中,*document.referrer*属性用于获取当前页面的上一个页面的URL地址,也就是用户是从哪个页面跳转过来的。这个属性返回的是一个字符串,包含了来源页面的完整URL。只在同一个窗口中打开预览的演示页面
<a href="./preview.html" target="_preview" type="primary" class="ui-button">预览</a>
设置_preview,就不会出现打开几次就新建几个页面tab了
a 标签设置 download="xxx.png" 就会触发下载
a标签 天然支持数据上报
<a href="http://www.xxxVideo.com.cn/" ping="/uploadClickTimes">上报</a>
在需要统计点击次数,访问次数的地方,可以直接写上ping属性
img + map + area 组合形成可交互图片
area 中href 地址也就是点击后跳转的路径可以是hasg,也可以是具体的链接