Comments (2)
@JarrodCTaylor take a look at https://github.com/GoogleChrome/puppeteer/blob/master/lib/FrameManager.js
Basically you can listen to Page.frameAttached
, Runtime.executionContextCreated
etc events..
Then you can do a Runtime.evaluate
using the new contextId
param.
from devtools-protocol.
I'm not aware of that, for me I set the frame context by defining this way -
frame_context = document.evaluate('(//frame|//iframe)[@name="'+frameInfo+'" or @id="'+frameInfo+'"]',document,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null).snapshotItem(0).contentDocument;
Then perform subsequent interactions with CSS selector -
frame_context.querySelector()...
Or with XPath selector -
document.evaluate(selector,frame_context,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null).snapshotItem(0)...
The Chromy project based on chrome-remote-interface also has an implementation for iframe - https://github.com/OnetapInc/chromy/blob/e0cfc3038349d0bf2bc0e452806ac7f2b5ba7cc0/src/document.js#L34
from devtools-protocol.
Related Issues (20)
- Target.createBrowserContext return error: Not allowed HOT 1
- Potential outdated definition for "Profiler.start"
- Inverse visualisation of diff in changelog.md HOT 1
- Method names not available HOT 2
- "Getting started" and "Basics" in the documentation not working HOT 2
- Consider adding "default" field to JSON schema property definitions.
- Facebook issue
- Page.compilationCacheProduced references non-existent Page.setGenerateCompilationCache
- "follwing" should be "following"
- Failed connecting to ws server ws://localhost:4444/devtools/... HOT 2
- Discrepencies in `dependencies` in multiple places
- No way to find the active tab HOT 1
- Reconsider versioning scheme
- It's not clear what kind of protocol is HOT 1
- Google Chrome
- How to interact with Chrome dialogs? HOT 1
- Enabling "Preserve Log" in Chrome Developer Tools Console via Selenium
- How to stream responses when using Fetch.fulfillRequest
- How to get a stream using Page.printToPDF method?
- Missing information on target types and their supported domains
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from devtools-protocol.