2012-02-10 44 views
5

我有一個簡單的智能電視應用程序,顯示垂直列表中的項目列表,其中的按鍵處理程序附加到與包含名單。三星智能電視頁面滾動視圖以響應上下按鍵

該列表包含一組DIV,其中每個DIV顯示由外部DIV包圍的每個文本字符串。完整列表的高度爲400像素,位於屏幕高度的540像素內。

用戶可以使用向上和向下按鈕來上下移動列表以突出顯示單個項目。

在模擬器上,這可以很好地工作,但是在真實電視上當用戶擊中時,不僅高亮移動按原樣完成,而且整個屏幕向上移動。

同樣,當用戶點擊時,突出顯示正確移動,但屏幕向上移動。

下面是列表

<div id="itemList"> 
    <div class="slot" id="slot0">Slot 0</div> 
    <div class="slot" id="slot1">Slot 1</div> 
    <div class="slot" id="slot2">Slot 2</div> 
    <div class="slot" id="slot3">Slot 3</div> 
    <div class="slot" id="slot4">Slot 4</div> 
</div> 
<a href='javascript:void(0);' id='anchorList' onkeydown='KeyHandler.list_KeyPress()'></a> 

這裏的標記是在CSS

#itemList { 
    position: absolute; 
    left: 20px; 
    top: 20px; 
    width: 250px; 
    height: 400px; 
    background-color: #000000; 
} 

#itemList .slot { 
    color: #ff0000; 
    width: 100%; 
    height: 80px; 
} 

事件list_KeyPress功能遞增或遞減突出顯示的項目的索引和類的它改變slotSelected

屏幕上沒有任何內容正在重畫,移動或調整大小。唯一的變化是突出顯示的DIV的類別。

爲了消除這個問題,我註釋掉了list_KeyPress()中的代碼,但仍然遇到同樣的問題 - 所以不是這樣。

這絕對是關鍵按下。

回答

7

其實我自己解決了這個問題。在CSS中,我將以下內容添加到body和html樣式中:

body, html { 
    overflow: hidden; 
}