2016-05-15 87 views
1

您好我想,如果任何人使用我的網址上的iframe我的代碼檢測ifame以及它的大小 像得到的iframe的內容寬度高度

<iframe name="test" src="http://mydomin.com/show.php" style="border: 0; position:absolute; top:0; left:0; right:0; bottom:0; width:100%; height:100%" scrolling="no" border="0" frameborder="0"></iframe> 

如果在IFRAME像mydomin任一項的使用我show.php文件檢測它在iframe和他的尺寸上使用我們的網址。 可能嗎?請告訴我該怎麼辦呢

+0

如果我正確理解你的問題,你要調整在其他的網站就在您的IFRAME?如果是這樣你不能這樣做... –

+1

我不確定我是否理解這個問題,但我認爲你可能指的是框架破壞的做法?在這種情況下,請閱讀以下內容:https://davidwalsh.name/javascript-framebuster –

回答

3

在你的iframe,你需要添加腳本:

if (window !== top) { 
    alert(window.innerWidth + ',' + window.innerHeight); 
} 

該腳本檢查,如果你的頁面運行在IFRAME:(window !== top)

然後alert寬度和高度。

演示:

http://output.jsbin.com/gabeze

更新

爲了防止網站嵌入你的,我知道最好的方法是在服務器中。

只需返回標頭X-FRAME-OPTIONS: DENY

X-Frame-Options HTTP響應標頭可用於指示是否允許瀏覽器在a或b中渲染頁面。通過確保其內容未嵌入其他網站,網站可以使用此功能來避免點擊劫持攻擊。

MDN

+0

我嘗試此操作以防止所有幀

但是當任何人在iframe上使用沙箱屬性時它不工作
請告訴我這是我做什麼的? –

+0

我已更新我的答案,請檢查這是否回答您的評論。 –