我有web page with jquery terminal和隱藏的textarea(即觸發Android虛擬鍵盤),我可以鍵入字符,但是當我輸入很少的命令時,內容被隱藏在虛擬鍵盤後面。終端內容滾動到底部,因爲當我輸入更多命令時,它正在滾動。當我在手機中使用硬件密鑰時,滾動是正確的(觸摸滾動還沒有正常工作)。可以網頁瞭解android虛擬鍵盤
我加入這個CSS
.terminal textarea { top: 0; width:0; margin-left: -8px; pointer-events: none; }
到prevoius
.terminal .clipboard {
position: absolute;
bottom: 0;
left: 0;
opacity: 0.01;
filter: alpha(opacity = 0.01);
filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0.01);
width: 2px;
}
.cmd > .clipboard {
position: fixed;
}
,並在插件代碼(用於剪貼板文本區域)。
self.click(function() {
self.find('textarea').focus();
});
而且我qestion是這樣的:JavaScript可以檢測虛擬鍵盤有多大?或者,也許有其他方式來改變網頁的大小,所以它只在視覺部分(不是鍵盤在哪裏)?或者,也許我的代碼有些問題,它不適用於移動設備。 即使用戶安裝不同的鍵盤,鍵盤的尺寸是否始終相同?
我不明白爲什麼這是被接受的答案..我知道這是一個精英管理,我很高興它是,但我實際上描述了一種方法,你可以找出虛擬鍵盤的大小(或甚至更好:活動的可用屏幕空間的大小)在我的答案。此外,我還介紹了一些關於實現的備選想法,因爲使用諸如「隱形視圖」之類的東西來獲得鍵盤聽起來有點哈克,至少可以說。我一點也不關心礦難不是被接受的答案,但現在每個讀到這個問題的人都會看到IMO錯誤的答案。 – baske
@baske也許是因爲這將它視爲網頁,而不是使用原生應用程序的java代碼?閱讀標題。 – boatcoder
如果您再次閱讀我的答案,您會發現雖然它包含「native」(java)代碼,但此代碼的最終目的是將可見窗口的大小傳遞給webview中的javascript代碼(使用loadUrl ) 方法)。問題是「可以javascript檢測虛擬鍵盤有多大?」,簡短答案是「否」。但事實證明,你可以使用Java(本地)代碼獲得所需的大小,並將其傳遞給JavaScript,我的答案解釋瞭如何.. – baske