我已經使用了一段時間的自定義函數來防止某些網站上的點擊劫持。然而,我很驚訝地發現,如何使用各種流行的JavaScript框架「慣用」這樣做並沒有太多。你如何使用JavaScript框架來防止點擊劫持?
是否有jQuery,Dojo,YUI和/或ExtJS的用戶使用他們的框架來實現點擊劫持保護?我很想看到例子!
我已經使用了一段時間的自定義函數來防止某些網站上的點擊劫持。然而,我很驚訝地發現,如何使用各種流行的JavaScript框架「慣用」這樣做並沒有太多。你如何使用JavaScript框架來防止點擊劫持?
是否有jQuery,Dojo,YUI和/或ExtJS的用戶使用他們的框架來實現點擊劫持保護?我很想看到例子!
爲什麼要使用庫?你可以這樣做:
var all = document.getElementsByTagName('iframe'), l = all.length;
while (l--) all[l].parentNode.removeChild(all[l]);
但是,如果你真的覺得你需要一個圖書館。在jQuery中,這很容易,只需找到所有iframe並將其刪除即可。
$(document).ready(function() { $('iframe').remove(); });
它並不那麼簡單。 頂部框架可能會阻止頁面被卸載。 我會用下面的代碼來解決它:
if (window.top !== window.self) {
window.top.location.replace(window.self.location.href);
alert('For security reasons, frames are not allowed.');
setInterval(function(){document.body.innerHTML='';},1);
}
它使用警報()給瀏覽器的時間來加載了新的一頁。 如果一切都失敗,它不會留下可點擊的元素。
查看完整的問題描述:frame-buster-buster-buster-code-needed
請參閱:http://stackoverflow.com/questions/958997 – Chris 2010-02-19 13:06:51
我明白,你並不需要一個庫 - 但在情況下,圖書館可能已經在使用,我想知道常見的「習慣用語」會是什麼。 jquery的例子很棒,謝謝。 – TML 2009-05-05 03:12:11