`标签之前,可以加入以下代码:
```javascript
if (window.location !== self.location) {
window.location = self.location;
}
```
这段代码的作用是检测当前页面是否在框架内被嵌入。如果是,则将页面重定向到其自身URL,从而防止被嵌入。这种方法有一个缺点:它也会阻止你的页面被嵌入自己的框架。也就是说,一旦应用这段代码,任何人都无法再把你的网页嵌入框架了,包括你自己在内。这显然不符合实际需求。
于是,我们进入第二种方法,它更高级、更灵活。我们可以在JavaScript代码中加入更复杂的逻辑,使得我们的网页只能被嵌入自己的框架。代码如下:
```javascript
try {
var currentDomain = window.location.hostname; // 获取当前域名
if (currentDomain != window.top.location.hostname) { // 判断是否在子框架内
window.top.location.href = window.location.href; // 重定向到顶层页面,防止被嵌入框架
}
} catch (e) { // 异常处理,以防因跨域导致的问题
window.top.location.href = window.location.href; // 重定向到顶层页面,防止被嵌入框架
}
```
这段代码首先获取当前页面的域名,然后判断是否在子框架内。如果是,它将顶层页面重定向到当前页面的URL,从而防止其他域名将你的网页嵌入其框架中。通过异常处理机制,解决了可能出现的跨域问题。这样既能防止被恶意嵌入框架,又能保证自己的页面能够正常嵌入自己的框架中。我的博客现在正是使用了这段代码。希望这两种方法能帮助大家有效防止网页被恶意嵌入Frame框架,保护原创者的权益和用户体验。