App7day / practical documentation
Add a clickTag without covering an internal HTML5 button
A full-banner click surface can intercept a practice, pause or other internal control. For a separate offer link, identify that anchor explicitly and test the downloaded bytes.
Worked example: one offer and one practice button
Use the synthetic input ZIP with offer anchor ID cta, width 300, height 250 and HTTPS destination https://example.com/synthetic-offer. Its source entry is creative/index.html.
Before: the declared offer anchor
<a id="cta" href="https://example.com/synthetic-offer" target="_blank" rel="noopener">View synthetic offer</a>
After: only that exit is routed to clickTag
<a id="cta" href="#" target="_blank" rel="noopener">View synthetic offer</a>
The repaired head declares var clickTag="https://example.com/synthetic-offer";. Its capture listener checks whether the clicked target is the selected anchor or one of its children before opening window.clickTag. The separate practice button keeps its original handler.
- Click Practice +1: the count changes from 0 to 1.
- Click View synthetic offer: the selected exit uses clickTag. The private review shows its destination without navigating.
- Click Practice +1 again: the count changes from 1 to 2.
The output moves creative/index.html to index.html. The CSS and image bytes stay identical; the generated receipt records their hashes. Compare the repaired ZIP with the input.
If your selected anchor already has an inline onclick, its ID is duplicated, or the creative already declares clickTag, this supported repair refuses it. Do not remove another integration solely to pass this check; review that creative manually.
Google documents a readable clickTag variable that the ad server can replace. Read the official CM360 guide. This example demonstrates the selective change; target-platform import, tracking and approval require separate verification.
- The synthetic practice button increments before repair.
- The selected offer anchor uses the configured clickTag destination.
- The practice button still increments after the offer link is clicked.
- CSS and image hashes match the preserved-asset receipt; the wrapper removal is listed.
Synthetic input ZIP · Actual repaired ZIP · Actual receipt. These are synthetic assets, never customer files.
The current engine places a capture listener before existing scripts and applies it only to the selected anchor. Existing handlers on that selected link are superseded; unrelated controls remain in their original code. The source refuses inline handlers on the selected anchor and existing clickTag integrations.
One tested free-editor export added a full-page overlay and blocked the fixture's counter. That output retained image/CSS bytes and added a clickTag; those strengths and that limitation both matter. A fully clickable static banner may be well served by a free editor.
Local archive and Node event-model checks passed for this fixture. Hosted browser and target-platform acceptance are separate checks; no universal ad-network certification is implied.
Official CM360 preparation guide · Free editor alternative
Check your own supported ZIP