Charles
  • Introduction
    • 👋Welcome
  • Getting started
    • Quickstart guide
  • Opening actions
    • Popup, side bar and modal options
    • Trigger the extension with a floating button
    • Open the extension automatically on specific URLs
  • Key features
    • Features overview
    • Open website on install / uninstall
    • Get tab info
    • Get text selected by user
    • Get element text
    • Get element HTML
    • Set element inner text
    • Set element inner HTML
    • Open URL in sidebar modal
    • Open URL in fullscreen modal
    • Copy text to clipboard
    • Populate an input field
    • Simulate mouse click on an element
    • Capture screenshot
    • Open URL in new tab
    • Show native alert
    • Set an extension badge color and text
    • Change extension icon
    • Close extension
    • Save to Chrome storage
    • Injecting custom javascript
  • Extending Charles
    • Extending Charles with your own Javascript
  • Publishing to the Chrome Webstore
    • Prepare extension for submission
    • Registering as a Chrome Webstore developer
    • Publishing your extension
  • FAQ
    • Common questions
  • Troubleshooting
    • Charles Data Elements do not receive any values
    • Cannot log in (cookie issues)
    • Support
Powered by GitBook
On this page
  1. Extending Charles

Extending Charles with your own Javascript

PreviousInjecting custom javascriptNextPrepare extension for submission

Last updated 5 months ago

You can add your own JS to execute within an active tab and also pass values back to bubble. Please have a look at this tutorial:

Code snippet

//send message to parent window
var msg = {
    "requestType":"customFunction"
}
window.parent.postMessage(JSON.stringify(msg), "*");


//listening for messages from the parent window
window.addEventListener('message', function (event) {
    // create object from event.data
    eventdata = JSON.parse(event.data);
    if (eventdata.returnType == "h1") {
        console.log('Received h1: ', eventdata.value);
    }
}, false);

https://share.descript.com/view/NARVH1XDUbL