一、友情链接
友情链接一般用a
链接来实现,放置在门户网站的最下方。
<a href="https://www.xxx.com/" target="_blank">xxx网站</a>
二、刀在哪里
友情链接捅你一刀没商量,那刀在哪里?刀就是 window.opener
!
window.opener
是什么呢?用一个例子来介绍。
比如在A页面中通过a
链接打开B页面,在B页面中可以window.opener
访问到A页面的window对象。
三、怎么捅
比如可以在B页面中:
-
执行
window.opener.location.href='https://www.xxx.com/'
,在页面A中打开一个跟A页面一模一样的页面,诱导用户进行输入密码等不安全的操作; -
执行
window.opener.document.getElementsByTagName('body')[0].innerHTML= '捅你一刀没商量';
改变页面A中的内容;
等等可以通过window对象进行的恶意操作。
四、怎么防
给 a
标签加上 rel = "noopener"
,例如
<a href="https://www.xxx.com/" rel = "noopener" target="_blank">
xxx网站
</a>
rel=noopener
支持chrome49和opera36,不支持火狐,为了兼容需要加上rel=noreferrer
。
<a href="https://www.xxx.com/" rel = "noopener noreferrer" target="_blank">
xxx网站
</a>
五、扩展
如果用js打开外链呢?
function openUrl(url) {
let open = window.open();
open.opener = null;
open.location= url;
}
浏览器不兼容上面的作法呢?
function openUrl(url) {
let a = document.createElement('a');
a.rel = 'noopener noreferrer';
a.target = "_blank";
a.href = url;
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
}
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!