FAQ¶
This page includes a list of possible issues, categorized, and possible solutions.
General Tracking Issues¶
What version of the WebSDK is my site using?¶
You can check your WebSDK version by running the following snippet on your webpage:
orb.bootloader.version();
If the output says 4.x you are using 4.x version of the WebSDK. Otherwise, if the output says latest you are using an older version of the WebSDK.
If you are facing any issues with the 4.x version you can check here first to ensure you're configuring and providing services/plugins correctly.
A part of a page cannot be tracked at all by the Web SDK¶
Many security breaches can occur when javascript, CSS, and HTML can have access to the same content across different frames and domains in the browser, and therefore browsers explicitly prohibit anything reaching across these frame boundaries directly.
Orbee tackles these issues by providing the Event Sync solution, which installs a second script within the IFrame, and syncs the events from within the IFrame to the tracker and user on the main site. This solution provides a secure way to share data using domain name aliasing (CNAME) and cookies to only sync between the two trackers that agree to share data with each other. Learn more
Form Tracking Issues¶
Form Submission is not tracking¶
There are a couple reasons form submissions might not track at all on a website:
- The form is within an IFrame
- There exists a listener on the form that is calling
e.stopPropagation
ore.stopImmediatePropagation
on the event before Orbee's listeners get the event - The form is not wrapped inside a form tag.
Each of these are detailed below.
1. The form is within an IFrame¶
See A part of a page cannot be tracked at all by the Web SDK.
2. The form callback is not triggered¶
HTML, by default, will ping the server again on form submissions, causing the page to reload. Many times, programmers want to stop this default action and do something else, like ping another endpoint instead, or validate the form. This can be done using the e.preventDefault function, and does not need to stop propagation of the event to other listeners. On older browsers that do not support e.preventDefault, returning false from the listener should also do this.
Warning
We strongly suggest that all usage of e.stopPropagation
and
e.stopImmediatePropagation
should be removed, since it prohibits robust
and non-obtrusive tracking from occurring.
If one must stop propagation of the event for whatever reason, please use one
of our tracking libraries to trigger the event instead of our default tracking
listener. This will allow the event to still fire, while providing you with a
way to stop event propagation. This also allows you to provide additional
context, such as {valid: false}
that might be applicable to the event.
3. The form is not wrapped in form tags¶
HTML form tags have a onsubmit event that we use to detect form submissions. If there are forms that are not wrapped inside a form
tag this submit event
will not be triggered. The easiest way to resolve this issue is to wrap your forms inside a form
tag and add type=submit
to your submit button.
We strongly suggest that all forms are nested inside HTML form
tags to reap all the benefits from our Form Tracking plugin.
<div id="form-1">
<label for="fname">First name:</label><br />
<input type="text" id="fname" name="fname" value="John" /><br />
<label for="lname">Last name:</label><br />
<input type="text" id="lname" name="lname" value="Doe" /><br /><br />
<input value="Submit" />
</div>
<form>
<div id="form-1">
<label for="fname">First name:</label><br />
<input type="text" id="fname" name="fname" value="John" /><br />
<label for="lname">Last name:</label><br />
<input type="text" id="lname" name="lname" value="Doe" /><br /><br />
<input type="submit" value="Submit" />
</div>
</form>
Script Installation Issues¶
Pageview fires, but namespaces and plugins¶
aren't loading !!! tip The easiest way to stay secure and free of installation issues is to stay up-to-date with the latest script installation. This issue is caused mainly by not having your installation script up-to-date. Previous versions required a particular format for the scripts installed, including order: ```javascript
If you change either script, or change the order, then this issue arises. By updating to the newest installation script, you'll be up-to-date and will not see this issue.