2013-03-06 239 views
0

因此,我正在爲瀏覽器製作一個基於JS的遊戲,並且我想從遊戲的查看器中隱藏大量內容,並且我爲此使用了iframe。在某些瀏覽器中,當你點擊空格鍵時,它會自動向下滾動屏幕,當玩家點擊空格鍵時,頁面內部會滾動,而我希望玩家看到的內容最終在屏幕外顯示。所以我想知道是否有任何方法來防止iframe完全滾動。 (我確實有scrolling="no"作爲iframe屬性之一,它並沒有做到這一點)防止iframe滾動

我也試過overflow:hidden;在CSS中,但似乎沒有幫助。它會阻止iOS和Android瀏覽器中的瀏覽器無法滾動,但在桌面瀏覽器中,問題仍然存在。

這裏就是我所做的

<iframe id="gameframe" name="Double Edge" height="576" width="1024" src="gameStart.html" scrolling="no"></iframe> 

在CSS:

.gameframe{ overflow:hidden;} 

感謝

+0

如何展示一些代碼?您是否在CSS或HTML中定義了滾動屬性? – 2013-03-06 07:32:30

+0

我有它在HTML中定義。 – 2013-03-06 07:35:49

+0

似乎像在html中滾動越來越被棄用,但溢出:隱藏應該工作。所以最好如果你可以做一些例子(也許在[小提琴](http://jsfiddle.net/) – 2013-03-06 07:43:19

回答

0

如果你有,你想從用戶隱藏頁面上的內容,但需要做的你應該使用「display:none」。 所以沒有什麼可滾動的,你不必處理不同的可能性用戶可以如何達到你的隱藏內容。

+0

以及...如果我有一些內容是在頁面的中途,但在頁面中的一部分,如果它像現在這樣,約70%的一個遊戲資產坐在遊戲框架內,另外30%坐在遊戲框架之外....我會如何照顧這樣的事情? – 2013-03-06 07:44:02

+0

我不確定我是否得到了您的問題...如果你在你的IFrame中有html元素,你不想顯示,我會在它們上使用「display:none」。 – 2013-03-06 07:51:54

+0

其中一個元素是框架中的一半,框架的一半,我想顯示上半部分元素但不是下半部分,這就是爲什麼它是顯示區域的一半。 – 2013-03-06 07:53:23

0

嘗試添加該onload

var el = document.createElement("iframe"); 
var iframe_style = "overflow:hidden; margin:0;padding:0;" 
var ifattr = { 
     id: 'my_iframe', width: '520', height: '300', 'scrolling': 'no', 'marginWidth':0, 
     'marginHeight':0, 'noResize': 0, 'border': 0, 'frameBorder':0, 'frameSpacing':0, 
     'background': 'transparent','allowTransparency': 'allowTransparency', 
     'name' :'my_iframe','style':iframe_style}; 

for (var i in ifattr) { 
     el.setAttribute(i, ifattr[i]); 
}a 
+0

nope沒有工作......但謝謝 – 2013-03-06 08:10:16