簡體   English   中英

iOS / iPad移動瀏覽器-textarea的onfocus事件打開屏幕前鍵盤之前的javascript觸發代碼

[英]iOS/iPad mobile safari - javascript trigger code before onfocus event for textarea opens on-screen keyboard

我有一個Web應用程序,該應用程序的固定位置元素內有一個textarea,該元素固定在瀏覽器屏幕的底部。 無論何時選擇文本區域,如果未將瀏覽器滾動到頁面底部,則文本區域最終會比屏幕鍵盤高30像素。

我想嘗試以某種方式觸發此代碼:

Query('html, body').scrollTop(999999);

在鍵盤打開之前將文檔滾動到頁面底部。 不幸的是,這在鍵盤出現之前不會觸發:

jQuery('div#team_chat textarea').bind('focus', function(e){

    if(jQuery.isIpad()){
        jQuery('html, body').scrollTop(999999);
    }

});

注意:isIpad()是我添加到jQuery對象中的擴展,用於檢測當前瀏覽器是否為ipad。

這是Ipad或任何其他移動/手持設備的預期行為,即只要焦點更改為input / textarea元素,頁面就會滾動到該元素,從而觸發打開鍵盤事件。 對於您的情況,您可以嘗試在將頁面滾動到底部之前添加setTimeout,以便在將文本區域聚焦之后,瀏覽器將發生默認行為,然后可以觸發scrollTop函數。

jQuery('div#team_chat textarea').bind('focus', function(e){

    if(jQuery.isIpad()){
        setTimeout("jQuery('html, body').scrollTop(999999)",1000);//Here sis the change
    }

});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM