Example #1
0
        public static async Task <IFrame> AttachFrameAsync(IPage page, string frameId, string url)
        {
            var handle = (IElementHandle)await page.EvaluateHandleAsync(@" async ({frameId, url}) => {
              const frame = document.createElement('iframe');
              frame.src = url;
              frame.id = frameId;
              document.body.appendChild(frame);
              await new Promise(x => frame.onload = x);
              return frame
            }", new { frameId, url });

            return(await handle.GetContentFrameAsync());
        }
 private Task <IJSHandle> CaptureLastKeydownAsync(IPage page)
 => page.EvaluateHandleAsync(@"() => {
         const lastEvent = {
           repeat: false,
           location: -1,
           code: '',
           key: '',
           metaKey: false,
           keyIdentifier: 'unsupported'
         };
         document.addEventListener('keydown', e => {
           lastEvent.repeat = e.repeat;
           lastEvent.location = e.location;
           lastEvent.key = e.key;
           lastEvent.code = e.code;
           lastEvent.metaKey = e.metaKey;
           lastEvent.keyIdentifier = 'keyIdentifier' in e && e.keyIdentifier;
         }, true);
         return lastEvent;
     }");