利用ES6標準化JavaScript proxy物件攔截SAP C4C頁面的HTML div原生操作
SAP Cloud for Customer的UI實現裡,有不少使用JavaScript在執行時動態建立div標籤的例子。
如果想研究這些情形發生的上下文,我們可以使用ES6提供的標準Proxy物件,給瀏覽器原生的document.createElement方法注入一個proxy,裡面設定一個斷點。這樣每當div標籤頁被動態建立時,我們注入的proxy將會取代標準的document.createElement被瀏覽器呼叫。從斷點停下來的呼叫上下文,我們即可觀測到更多資訊。
const handler = { // Our hook to keep the track apply: function (target, thisArg, args){
console.log("Jerry Intercepted a call tocreateElement with args: " + args);
debugger;
return target.apply(thisArg, args)
}}document.createElement= new Proxy(document.createElement, handler);
比如每次SAP Cloud for Customer UI出現busy indicator的動畫效果時,其實瀏覽器就是殘軀新建一個div標籤的方式實現的。
使用setTimeout實現busy indicator的動態效果。
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2684599/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ES6 Proxy攔截器詳解
- Proxy 攔截
- Proxy代理資料攔截方法
- 利用攔截器加快取完成介面防刷操作快取
- 如何建立HTML Mashup並插入到SAP Cloud for Customer標準頁面裡HTMLCloud
- HTML <div>標籤HTML
- JavaScript 獲取div在頁面中座標JavaScript
- Asp.Netcore使用Filter來實現介面的全域性異常攔截,以及前置攔截和後置攔截ASP.NETNetCoreFilter
- IIS 攔截主頁和SwaggerSwagger
- spring mvc攔截器,spring攔截器以及AOP切面的區別和原始碼SpringMVC原始碼
- 如何將SAP C4C TI頁面的值傳遞到Embedded Component裡去
- 利用HTML5的history.replacestate()修改當前頁面的URLHTML
- JavaScript HTML DOM 物件JavaScriptHTML物件
- Mybatis 分頁:Pagehelper + 攔截器實現MyBatis
- JavaScript物件導向修改標籤頁詳解JavaScript物件
- Web 終極攔截技巧(全是騷操作)Web
- JavaScript ES6 Promiss物件JavaScript物件
- 網站域名被QQ攔截提示:當前網頁非官方頁面攔截的解決辦法網站網頁
- VUE 未來代理操作:ES6 Proxy代理Vue
- 利用Excel匯入資料到SAP C4CExcel
- 對於購物中心HTML前端頁面的最佳化HTML前端
- JavaScript HTML DOM Canvas 物件JavaScriptHTMLCanvas物件
- Html中引用其他html頁面的幾種方式HTML
- 前端安全 — 淺談JavaScript攔截XSS攻擊前端JavaScript
- JavaScript物件導向怎樣刪除標籤頁?JavaScript物件
- OkHttp 攔截器的一些騷操作HTTP
- 標準模式與怪異模式對於渲染頁面的影響模式
- SAP Spartacus SSR 模式下 index.html 頁面的響應邏輯除錯模式IndexHTML除錯
- 基於原生fetch封裝一個帶有攔截器功能的fetch,類似axios的攔截器封裝iOS
- 利用責任鏈模式設計一個攔截器模式
- 如何利用Ptrace攔截和模擬Linux系統呼叫Linux
- 如何找到SAP Cloud for Customer標準培訓和認證方面的資訊Cloud
- 關於 SAP Spartacus Angular HTTP Interceptor 的攔截順序AngularHTTP
- SpringMVC攔截器,設定不攔截的URLSpringMVC
- Html 結構標準模板HTML
- HTML 使用表單標籤實現註冊頁面的例項程式碼HTML
- TCP標誌位詳解及tcp攔截配置TCP
- 前端架構之vue+axios 前端實現登入攔截(路由攔截、http攔截)前端架構VueiOS路由HTTP