当前位置: 首页 > Web前端 > HTML

使用ES6中标准化的JavaScript代理对象拦截SAPC4C页面的HTMLdiv原生操作

时间:2023-04-02 17:13:15 HTML

SAPCloudforCustomerUI实现,有很多使用JavaScript在运行时动态创建div标签的例子。如果我们想研究这些情况发生的上下文,我们可以使用ES6提供的标准Proxy对象,在浏览器原生的document.createElement方法中注入一个代理,并在里面设置断点。这样,每当动态创建div标签页时,我们注入的代理就会替换标准的document.createElement被浏览器调用。我们可以从断点停止的调用上下文中观察到更多信息。consthandler={//我们保持跟踪的钩子应用:function(target,thisArg,args){console.log("JerryInterceptedacalltocreateElementwithargs:"+args);调试器;返回target.apply(thisArg,args)}}document.createElement=newProxy(document.createElement,handler);例如,SAPCloudforCustomerUI上每次出现忙碌指示器的动画效果时,浏览器实际上创建了一个新的div标签。使用setTimeout实现busyindicator的动态效果。获取更多Jerry原创文章,请关注公众号“王子熙”: