国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

CRM WebClient UI的瀏覽器打印實現(xiàn)

dingding199389 / 2506人閱讀

摘要:按住之后,會觸發(fā)框架的按鍵響應函數(shù)。瀏覽器傳入的事件處理對象里屬性為,為按鍵對應的,意思就是和同時按下。這個響應函數(shù)被注冊到整個對象上,因此您在頁面任何位置點擊都能得到響應。就是自己封裝的事件注冊函數(shù),用于多瀏覽器的兼容支持。

WebClient UI上自帶了一個打印按鈕,按Ctrl + P后可以生成一個新的頁面供打印。


如下圖所示??梢钥吹竭@個頁面里所有的超鏈接都已經(jīng)被移除了。

這個頁面的生成邏輯如下。

1. 按住ctrl + p之后,會觸發(fā)WebClient UI框架的按鍵響應函數(shù)thtmlbKeyDown。瀏覽器傳入的事件處理對象里ctrl屬性為true,keycode為80(按鍵p對應的code),意思就是ctrl和p同時按下。

這個響應函數(shù)thtmlbKeyDown被注冊到整個document對象上,因此您在頁面任何位置點擊ctrl+p都能得到響應。

從右上角的調(diào)用棧能發(fā)現(xiàn)crmFrwPrint被調(diào)用。crmFrwPrint會打開print.do這個控制器,位于BSP應用bspwd_basics里。

2. 打開print.do控制器的實現(xiàn)類CL_BSPWD_BASICS_PRINT

這個控制器會打開print.html頁面

3. 我們按了ctrl+p后生成的頁面的內(nèi)容就是在print.html里生成的。核心代碼在函數(shù)ppStartScripts里,被thtmlbRegisterOnLoad注冊到頁面的load事件里,意思是print.html加載時就執(zhí)行。


thtmlUtil.addEventHandler就是SAP自己封裝的事件注冊函數(shù),用于多瀏覽器的兼容支持。

最核心的兩個函數(shù):

CreateShield

生成一個height和width為100%的div,背景圖片設置成SAP預定義好的1x1.gif。

運行時顯示如下:

loadPage

通過window.opener拿到發(fā)生了ctrl+p按鍵的原始頁面,然后把其th-l-wcsubheadercontainer下面的所有元素的html直接復制到打印輸出頁面的header元素下面。

這樣就實現(xiàn)了把原始頁面的內(nèi)容搬到了打印輸出頁面。

然后得到打印頁面所有超鏈接標簽,然后把這些標簽的href和onclick都置為一個函數(shù)體為return false的函數(shù),這樣超鏈接就不再能點擊。

var?nirvana?=?new?Function?(?"return?false;"?);

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/94474.html

相關文章

  • 如何證明CRM WebClient UI應用是有狀態(tài)(Stateful)

    摘要:隨便找一個在里會被頻繁調(diào)用到的函數(shù),在函數(shù)里創(chuàng)建一個隱式增強,打印當前的會話。不關閉瀏覽器,在瀏覽器里不斷做操作,可以觀察到不管做任何操作,每次斷點出發(fā)后,打印出來的會話都相同。每次觸發(fā)打印出的會話都相同 隨便找一個在CRM WebClient UI里會被頻繁調(diào)用到的函數(shù),在函數(shù)里創(chuàng)建一個隱式增強,打印當前的會話ID。 showImg(https://segmentfault.com/...

    騫諱護 評論0 收藏0
  • 如何證明CRM WebClient UI應用是有狀態(tài)(Stateful)

    摘要:隨便找一個在里會被頻繁調(diào)用到的函數(shù),在函數(shù)里創(chuàng)建一個隱式增強,打印當前的會話。不關閉瀏覽器,在瀏覽器里不斷做操作,可以觀察到不管做任何操作,每次斷點出發(fā)后,打印出來的會話都相同。每次觸發(fā)打印出的會話都相同 隨便找一個在CRM WebClient UI里會被頻繁調(diào)用到的函數(shù),在函數(shù)里創(chuàng)建一個隱式增強,打印當前的會話ID。 showImg(https://segmentfault.com/...

    paney129 評論0 收藏0
  • 如何證明CRM WebClient UI應用是有狀態(tài)(Stateful)

    摘要:隨便找一個在里會被頻繁調(diào)用到的函數(shù),在函數(shù)里創(chuàng)建一個隱式增強,打印當前的會話。不關閉瀏覽器,在瀏覽器里不斷做操作,可以觀察到不管做任何操作,每次斷點出發(fā)后,打印出來的會話都相同。每次觸發(fā)打印出的會話都相同 隨便找一個在CRM WebClient UI里會被頻繁調(diào)用到的函數(shù),在函數(shù)里創(chuàng)建一個隱式增強,打印當前的會話ID。 showImg(https://segmentfault.com/...

    rainyang 評論0 收藏0

發(fā)表評論

0條評論

dingding199389

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<