反饋已提交

網絡繁忙

JS實現填報長時間未操作關閉視窗

1. 概述

1.1 問題描述

本文提供了報表一段時間內沒有操作,那麼頁面會自動跳出或者關閉的方法。效果如下圖所示:

1.2 實現思路

填報範本新增載入結束事件,JavaScript 程式碼中設定一個倒計時,當監聽到 keydown、mousemove、mousedown 等事件時,重置倒計時。

若倒計時為 0,觸發關閉頁面事件。

2. 範例

2.1 準備範本

開啟設計器內建範本:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\VerifyForm\內建校驗.cpt

2.2 新增事件

菜單欄點選「範本>範本Web屬性」,在填報頁面設定處新增一個「載入結束」事件,如下圖所示:

JavaScript 程式碼如下:

 /* if 10 seconds no operation then logout  */
        var maxTime = 10// 此處設定倒計時時間,單位為秒
        var time = maxTime;
        $('body').on('keydown mousemove mousedown'function(e{
            time = maxTime; // reset
        });
        var intervalId = setInterval(function({
            time--;
            if (time <= 0) {
                ShowInvalidLoginMessage();
                clearInterval(intervalId);
            }
        }, 1000)
        function ShowInvalidLoginMessage({

FR.Msg.alert("系統提示","您已經長時間沒操作了,即將跳出系統!");
//TODO 做需要做的操作
//exp:關閉頁面
setTimeout(function ({
window.close();
},2000);//彈出提示2秒後關閉頁面,此處單位為毫秒
        }

注:範例中設定了 10 秒內沒操作頁面,那麼就會自動關閉視窗,實際場景中可以延長時間,改下程式碼中倒計時時間即可。

2.3 效果預覽

儲存範本,點選填報預覽,10 秒內不操作頁面,頁面會自動關閉,如下圖所示:

注:不支援行動端預覽。

3. 範本下載

已完成範本可參見:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\填報預覽JS實體\填報長時間未操作關閉視窗.cpt

點選下載範本:填報長時間未操作關閉視窗 .cpt


附件列表


主題: 填報應用
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
  • 圖片不清晰
  • 用語看不懂
  • 功能說明看不懂
  • 操作說明太簡單
  • 內容有錯誤
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

10s後關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙