用CSS可以實(shí)現(xiàn)效果。代碼如下:html{height:100%;} body{height:100%;overflow:hidden;}//overflow:hidden為隱藏滾動(dòng)條 body{overflow:scroll;}//如果內(nèi)容高度大于屏幕就會(huì)顯示滾動(dòng)條HTML5 是下一代的 HTML。
為岱岳等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及岱岳網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都做網(wǎng)站、網(wǎng)站建設(shè)、岱岳網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
這個(gè)軟鍵盤好像必須有一個(gè)手動(dòng)的事件執(zhí)行才會(huì)彈出呢~
我有個(gè)雛形想法,僅供參考~(沒有實(shí)踐)
流程為:
在文本框外加個(gè)dom元素,然后添加個(gè)點(diǎn)擊事件,在點(diǎn)擊事件里面執(zhí)行focus(),然后用trigger()(這是一個(gè)jq的模擬事件方法)將click模擬自執(zhí)行一下,應(yīng)該就相當(dāng)于手動(dòng)click了吧~
解決方法
1、scrollIntoView(alignWithTop):?滾動(dòng)瀏覽器窗口或容器元素,以便在當(dāng)前視窗的可見范圍看見當(dāng)前元素。
2、alignWithTop?若為?true,或者什么都不傳,那么窗口滾動(dòng)之后會(huì)讓調(diào)用元素的頂部與視口頂部盡可能平齊。
3、alignWithTop?若為?false,調(diào)用元素會(huì)盡可能全部出現(xiàn)在視口中,可能的話,調(diào)用元素的底部會(huì)與視口頂部平齊,不過頂部不一定平齊。
4、該方法是唯一一個(gè)所有瀏覽器都支持的方法,類似還有如下方法,但是只有在Chrome和Safari有效。
5、代碼如下:
6、再次測(cè)試,效果如下:
7、相比于input被擋住,突兀地出現(xiàn)在頁(yè)面中間更加可以令人接受,但是多次測(cè)試,仍然存在問題:當(dāng)切換輸入法的時(shí)候,input框的位置會(huì)往下移動(dòng),被鍵盤擋住一部分,而且出現(xiàn)的概率比較高(中英文切換),效果如下:
8、當(dāng)軟鍵盤被喚起是,使用?scrollTop()?方法使input元素滾動(dòng)到指定的位置,但是滾動(dòng)的具體數(shù)值需要調(diào)試才能給出,所以這里就不再演示了。
移動(dòng)web聊天頁(yè)面,輸入框在底部的時(shí)候,點(diǎn)擊輸入,彈起軟鍵盤,iOS在將頁(yè)面推上的時(shí)候會(huì)回彈一下,導(dǎo)致鍵盤剛好遮擋到輸入框。
初次觸發(fā)輸入框的focus的時(shí)候,iOS 鍵盤默認(rèn)是以英文鍵盤高度推上頁(yè)面,但一般我們的默認(rèn)輸入是中文,會(huì)導(dǎo)致軟鍵盤的高度變化,中文輸入鍵盤高度高于英文,所以導(dǎo)致了遮擋。
Element.scrollIntoViewIfNeeded() 方法用來(lái)將不在瀏覽器窗口的可見區(qū)域內(nèi)的元素滾動(dòng)到瀏覽器窗口的可見區(qū)域。 如果該元素已經(jīng)在瀏覽器窗口的可見區(qū)域內(nèi),則不會(huì)發(fā)生滾動(dòng)。 此方法是標(biāo)準(zhǔn)的 Element.scrollIntoView() 方法的專有變體。
當(dāng)鍵盤在切換中英輸入法時(shí),鍵盤高度變化仍然會(huì)引起鍵盤遮擋
監(jiān)聽輸入框的 focus 、 blur 事件,當(dāng)聚焦時(shí),循環(huán)調(diào)用 input.scrollIntoViewIfNeeded 方法。
當(dāng)監(jiān)聽到 blur 時(shí),停止循環(huán)。
給輸入框放在html這層,然后給html相對(duì)定位,height:100%;width:100%,再給輸入框絕對(duì)定位到bottom:0;left:0;這時(shí)候輸入框在鍵盤彈出的時(shí)候會(huì)跳到輸入框的上面。
html5的導(dǎo)出軟鍵盤要做監(jiān)聽處理,就是click和keydown事件做綁定。然后調(diào)用響應(yīng)的video函數(shù)就好了。諸如video.parse()