慎用target=”_blank”
在页面中如果想打开一个链接跳转到新页面,通常是采用target="_blank"
的形式。
<a href="https://www.google.com" target="_blank">Google</a>
但是,这样做其实是存在安全隐患的。
如果,在A页面使用target="_blank"
跳转到B页面,那么在B页面中可以通过window.opener
获取到A页面中的window
属性,无论跨域与否。
为了防止这个问题出现,可以给跳转的a
链接添加rel="noopener"
或者rel="noreferrer"
属性,之后打开新页面的window.opener
就是null
了,此时,新的窗口将会运行在新的进程里,不会影响原来页面的进程。
<a href="https://www.google.com" target="_blank" rel="noopener">Google</a>
如果您觉得本文对您有用,欢迎捐赠或留言~
- 本博客所有文章除特别声明外,均可转载和分享,转载请注明出处!
- 本文地址:https://www.leevii.com/?p=2633
之前发现WordPress自动加了,一直没注意这noopener的属性原来是这个作用~666.