<script>
var googleForm = '***Exemplo: Obrigado pela mensagem!***';
(function googleFormValidation() {
if (document.body && document.body.innerText.includes(googleForm)) {
console.log("Formulário Enviado");
dataLayer.push({
'event': '***nome do evento***'
})
} else {
setTimeout(googleFormValidation, 500);
}
})();
</script>
<script>
window.addEventListener('click', function (e) {
if (e.target.closest('[href*="***Exemplo: telegram.com***"]')) {
console.log(' has been clicked');
dataLayer.push({
'event': '***nome do evento***'
})
}
})
</script>
<script>
document.querySelector('#***Exemplo: #smt-form**').addEventListener('click',function ()
{
console.log(' clicked button')
dataLayer.push({
'event': '***nome do evento***'
})
})
</script>
<script>
document.querySelector('.***Exemplo: .smt-whatsapp***').addEventListener('click',function ()
{
console.log('. clicked button')
dataLayer.push({
'event': '***nome do evento***'
})
})
</script>
<script>
document.querySelector('[***Exemplo: name="checkout"***]').addEventListener('click', function() {
console.log('was clicked!');
dataLayer.push({
'event': '***nome do evento***'
})
});
</script>
<script>
document.querySelectorAll('[***Exemplo: name="add-to-cart"***]').forEach(function(btn) {
btn.addEventListener('click', function() {
console.log('was clicked!');
dataLayer.push({
'event': '***nome do evento***'
})
});
});
</script>
<script>
document.querySelectorAll('').forEach(function(btn) {
btn.addEventListener('click', function() {
console.log('***Exemplo: .add-to-cart***was clicked!');
dataLayer.push({
'event': '***nome do evento***'
})
});
});
</script>
<script>
var g_EC = { email: '[type="email"]', phone_number: '[type="tel"]' };
window.g_setupEC = Object.create(null);
window.g_ECObj = Object.create(null);
var g_countryCode = '***Exemplo Codigo do pais: 55***';
document.addEventListener('input', g_setup_ECObj);
function g_setup_ECObj(e) {
var input = e.target;
for (i in g_EC) {
if (input.matches(g_EC[i])) g_setupEC['g_' + i] = input.value;
}
g_save_toECObj();
}
function g_save_toECObj() {
for (i in g_EC) {
if (g_setupEC['g_' + i] && i === 'email' && g_validateMail(g_setupEC['g_' + i])) window.g_ECObj[i] = g_setupEC['g_' + i];
if (g_setupEC['g_' + i] && i === 'phone_number') {
var cleanedPhone = g_validatePhone(g_setupEC['g_' + i]);
var finalPhone = cleanedPhone.includes('+') ? cleanedPhone : cleanedPhone.startsWith(g_countryCode) ? '+' + cleanedPhone : '+' + g_countryCode + cleanedPhone;
finalPhone.length >= 11 && finalPhone.length <= 15 ? (window.g_ECObj[i] = finalPhone) : delete window.g_ECObj[i];
}
}
}
function g_validateMail(email) {
return /\S+@\S+\.\S+/.test(email);
}
function g_validatePhone(tel) {
return tel.replace(/\D/g, '');
}
g_save_toECObj();
(function googleFormValidation() {
if(document.body.innerText.includes('***Exemplo: Obrigado pela mensagem!***') && g_ECObj.email ) {
console.log("¡Tus datos se enviaron con éxito!");
dataLayer.push({
'event' : '***nome do evento***'
})
}else {
setTimeout(googleFormValidation, 500);
}
})();
</script>
<script>
var g_EC = { email: '[type="email"]', phone_number: '[type="tel"]' };
window.g_setupEC = Object.create(null);
window.g_ECObj = Object.create(null);
var g_countryCode = '***Exemplo codigo do pais: 55***';
document.addEventListener('input', g_setup_ECObj);
function g_setup_ECObj(e) {
var input = e.target;
for (i in g_EC) {
if (input.matches(g_EC[i])) g_setupEC['g_' + i] = input.value;
}
g_save_toECObj();
}
function g_save_toECObj() {
for (i in g_EC) {
if (g_setupEC['g_' + i] && i === 'email' && g_validateMail(g_setupEC['g_' + i])) window.g_ECObj[i] = g_setupEC['g_' + i];
if (g_setupEC['g_' + i] && i === 'phone_number') {
var cleanedPhone = g_validatePhone(g_setupEC['g_' + i]);
var finalPhone = cleanedPhone.includes('+') ? cleanedPhone : cleanedPhone.startsWith(g_countryCode) ? '+' + cleanedPhone : '+' + g_countryCode + cleanedPhone;
finalPhone.length >= 11 && finalPhone.length <= 15 ? (window.g_ECObj[i] = finalPhone) : delete window.g_ECObj[i];
}
}
}
function g_validateMail(email) {
return /\S+@\S+\.\S+/.test(email);
}
function g_validatePhone(tel) {
return tel.replace(/\D/g, '');
}
g_save_toECObj();
document.addEventListener('click', function (e) {
if (e.target.innerText == '***Exemplo: Enviar***' && g_ECObj.email) {
console.log('Conversion');
dataLayer.push({
'event': '***nome do evento***'
})
}
})
</script>
<script>
var g_EC = { email: '[type="email"]', phone_number: '[type="tel"]' };
window.g_setupEC = Object.create(null);
window.g_ECObj = Object.create(null);
var g_countryCode = '***Exemplo codigo do pais: 55***';
document.addEventListener('input', g_setup_ECObj);
function g_setup_ECObj(e) {
var input = e.target;
for (i in g_EC) {
if (input.matches(g_EC[i])) g_setupEC['g_' + i] = input.value;
}
g_save_toECObj();
}
function g_save_toECObj() {
for (i in g_EC) {
if (g_setupEC['g_' + i] && i === 'email' && g_validateMail(g_setupEC['g_' + i])) window.g_ECObj[i] = g_setupEC['g_' + i];
if (g_setupEC['g_' + i] && i === 'phone_number') {
var cleanedPhone = g_validatePhone(g_setupEC['g_' + i]);
var finalPhone = cleanedPhone.includes('+') ? cleanedPhone : cleanedPhone.startsWith(g_countryCode) ? '+' + cleanedPhone : '+' + g_countryCode + cleanedPhone;
finalPhone.length >= 11 && finalPhone.length <= 15 ? (window.g_ECObj[i] = finalPhone) : delete window.g_ECObj[i];
}
}
}
function g_validateMail(email) {
return /\S+@\S+\.\S+/.test(email);
}
function g_validatePhone(tel) {
return tel.replace(/\D/g, '');
}
g_save_toECObj();
document.querySelector('***Exemplo: .send-class #send-button***').addEventListener('click', function () {
if (g_ECObj.email) {
console.log('Conversion');
dataLayer.push({
'event': '***nome do evento***'
})
}
})
</script>
<script>
var g_shadowInterval = setInterval(function () {
var g_shadowRoot = document.querySelector('***Exemplo: #shadow-root54***');
if (!g_shadowRoot) return;
clearInterval(g_shadowInterval);
console.log('shadow root found');
g_shadowRoot.shadowRoot.querySelector('***Exemplo: #smt-whatsapp***').addEventListener('click', function(e)
{
console.log(' button clicked');
dataLayer.push({
'event': '***nome do evento***'
})
})
}, 500);
</script>
//Validar primeiro se este código pode ser usado!!! Coloca o seguinte no console com o seletor do iframe:
//"document.querySelector(' ').contentWindow.document
//Se devolve "Blocked a frame with origin "..." from accesing a cross origin frame." este codigo não funcionará, deve-se procurar alternativas.
<script>
(function iframeClickValidation()
{
var gIframeSelector = document.querySelector('***Exemplo: #iframe8976***')
if(gIframeSelector != null)
{
console.log('iframe selector found');
gIframeSelector.contentDocument.querySelector('***Exemplo: #smt-whatsapp***').addEventListener('click',function ()
{
console.log('. clicked button')
dataLayer.push({
'event': '***nome do evento***'
});
});
}
else
{
setTimeout(iframeClickValidation, 500);
}
})();
</script>
//Validar primeiro se este código pode ser usado!!! Coloca o seguinte no console com o seletor do iframe:
//"document.querySelector(' ').contentWindow.document
//Se devolve "Blocked a frame with origin "..." from accesing a cross origin frame." este codigo não funcionará, deve-se procurar alternativas.
<script>
var googleForm = '***Exemplo: obrigado pela mensangem***';
(function googleFormValidation() {
var frame = document.querySelector('***iframe selector Exemplo: #iframe4978***')
if (frame && frame.contentDocument && frame.contentDocument.body.innerText.includes(googleForm)) {
dataLayer.push({
'event': '***nome do evento***'
});
} else {
setTimeout(googleFormValidation, 500);
}
})();
</script>
<script>
//crear variable capa de datos:
window.dataLayer = window.dataLayer || [];
</script>
<script>
// DOMContentLoaded
document.addEventListener('DOMContentLoaded', function() {
// Tu código aquí
});
</script>
<script>
window.addEventListener('click', function (e) {
if (e.target.closest('[href*="web.whatsapp"]') || e.target.closest('[href*="api.whatsapp"]') || e.target.closest('[href*="wa.link"]') || e.target.closest('[href*="wa.me"]')) {
console.log('web.whatsapp has been clicked');
dataLayer.push({
'event': 'whatsapp'
});
}
});
</script>
<script>
window.addEventListener('click', function (e) {
if (e.target.closest('[href*="tel:"]')) {
console.log('tel: has been clicked');
dataLayer.push({
'event': 'tel'
})
}
})
</script>
<script>
window.addEventListener('click', function (e) {
if (e.target.closest('[href*="mailto:"]')) {
console.log('mailto: has been clicked');
dataLayer.push({
'event': 'mailto'
})
}
})
</script>
<script>
window.addEventListener('message', function (m)
{
try
{
if (m.data.eventName === 'onFormSubmit')
{
console.log('Form has been sent');
dataLayer.push({ event: 'hubSpotForm_sent' });
}
} catch (x) { }
});
</script>
<script>
window.g_ECObj = Object.create(null);
window.addEventListener('message', function (m)
{try
{
if (m.data.eventName === 'onFormSubmit')
{
console.log('Form has been sent');
var data_raw = m.data.data;
window.g_ECObj = (data_raw.reduce(function (acc, e)
{
if (e.name === 'email')
{ var gEmail = e.value.match(/\b(\S+@\S+\.\S+)\b/);
acc = Object.assign(acc, { 'email': acc = gEmail[0]});
}
if (e.name === 'phone')
{
var g_countryCode = '***Codigo do pais Exemplo: 55***';
var cleanedPhone = e.value.replace(/\D/g, '');
var finalPhone = cleanedPhone.slice(0, g_countryCode.length).includes(g_countryCode) ? '+' + cleanedPhone : '+' + g_countryCode + cleanedPhone;
if (finalPhone.length >= 11 && finalPhone.length <= 15)
{
acc = Object.assign(acc, { 'phone_number': finalPhone});
}
}
return acc;
}, {}));
dataLayer.push({ event: '***nome do evento***' });
}
} catch (x) { }
});
</script>
<script>
window.addEventListener('message', function(e) {
var jsonData = JSON.parse(e.data);
if (jsonData.hasOwnProperty('data') && jsonData.data.eventKey === 'TPA_PUB_SUB_ChatWidget.onMessageSent') {
console.log("MENSAJE ENVIADO");
console.log(jsonData);
dataLayer.push({
'event':'messageSent'
})
}
});
</script>
<script>
window.addEventListener('message', function(event) {
try {
var message = JSON.parse(event.data);
if (message.func === 'amoformsSuccessSubmit') {
console.log('Formulario enviado');
dataLayer.push({
'event': 'iframe_amoCrmSent'
});
}
} catch (error) {
}
});
</script>
<script>
window.addEventListener('message', function(e) {
var jsonData = e.data;
if (jsonData.type === 'WSP_POST_LEAD' && jsonData.data) {
console.log('Received message with event string:', jsonData);
dataLayer.push({
'event': 'cliengoWspLead'
});
}
});
</script>
<script>
window.addEventListener('message', function (m) {
try {
if (m.data) {
var data_raw = JSON.parse(m.data).visitor
if (data_raw != null) {
console.log('The form has been sent')
dataLayer.push({
'event': 'zohoFormSent'
});
}
}
} catch (error) { }
})
</script>
<script>
window.addEventListener('message', function (m) {
if (m.data.event.includes('event_scheduled')) {
console.log('Scheduled appointment');
dataLayer.push({
'event': 'calendlyScheduled'
});
}
})
</script>
//variable con informacion que desea guardar.
var googleValue = document.querySelector("#ejemplo").innerText.replace(/\D/g,'')/ 100;
//guardar en localStorage
localStorage.setItem('googleValue', googleValue);
//Cargar del localStorage
localStorage.getItem('googleValue');
//Para GTM probar:
window.googleValue = Object.create(null);
var googleValue = document.querySelector("#ejemplo").innerText.replace(/\D/g,'')/ 100;
//guardar en localStorage
localStorage.setItem('googleValue', googleValue);
//Cargar del localStorage
localStorage.getItem('googleValue');
function (){
return window.location.href.match(/id_order=(\d+)/)[1];
}
<script>
window.addEventListener('message', function(e) {
if (e.data.upWidgeChatCallback) {
console.log('Received message with event string:', e.data);
dataLayer.push({'event':'upnifySent'})
}
});
</script>
<script>
window.addEventListener('message', function(e) {
if (e.data.upWidgeChatCallback) {
window.g_ECObj = Object.create(null);
g_ECObj.email = e.data.upWidgeChatCallback.correo.match(/\S+@\S+\.\S+/);
console.log('Received message with event string:', e.data);
dataLayer.push({'event':'upnifySent'})
}
});
</script>
//tag global
<!-- Global site tag (gtag.js) - Google Ads: AW-XXXXX -->
<script async src="https://www.googletagmanager.com/gtag/js?id=AW-XXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'AW-XXXXX');
</script>
//codigo para conversão de compra
<!-- Event snippet for Test conversion page -->
<script>
gtag('event', 'conversion', {
'send_to': 'AW-XXXXXX/XXXXX',
'value': {{ checkout.total_price | divided_by: 100.0 }},
'currency': '***BRL***',
'transaction_id': '{{ order_number }}',
});
</script>
{% assign fa_send_to = 'AW-XXXXX'%}
{% assign fa_include_tax_and_shipping = 'no' %}
{% comment %}DO NOT EDIT BELOW{% endcomment %}
{% if fa_google_coding %}{% assign fa_google_coding = true %}{%- else -%}{% assign fa_google_coding = false %}{%- endif -%}
{% if fa_include_tax_and_shipping == 'yes' %}
{% assign fa_checkout_price = checkout.total_price | divided_by: 100.0 %}
{%- else -%}
{% assign fa_checkout_price = checkout.subtotal_price | divided_by: 100.0 %}
{%- endif -%}
{% assign fa_google_ids = fa_send_to | split: "/" %}
{% if fa_google_coding == false %}
<script async src="https://www.googletagmanager.com/gtag/js?id={{fa_google_ids[0]}}"></script>
{%- endif -%}
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', '{{fa_google_ids[0]}}', {'allow_enhanced_conversions':true});
</script>
{% if first_time_accessed %}
<script>
gtag('set', 'user_data', {
"email": "{{ customer.email }}",
"phone_number": "{{billing_address.phone}}",
"address": {
"first_name": "{{ billing_address.first_name }}",
"last_name": "{{billing_address.last_name}}",
"street": "{{billing_address.street}}",
"city":"{{billing_address.city}}",
"region": "{{billing_address.province}}",
"postal_code": "{{billing_address.zip}}",
"country": "{{billing_address.country}}"
}
});
gtag('event', 'conversion', {
'send_to': '{{ fa_send_to }}',
'value': {{ fa_checkout_price }},
'currency': '{{ currency }}',
'transaction_id': '{{ order_number }}'
});
</script>
{% endif %}
<script>
function gCheckSelector() {
var gSelector = document.querySelector('***Exeplo: #iframe423***');
if(gSelector){
console.log('Selector found');
//tu codigo aqui
clearInterval(gCheckInterval);
};
};
var gCheckInterval = setInterval(gCheckSelector, 2000);
</script>
<script>
document.querySelector('***Exemplo: #inputbox-423***').addEventListener("keydown", function(event) {
if (event.key === "Enter") {
console.log('Enter')
dataLayer.push({
'event': '***nome do evento***'
});
};
});
</script>
<!-- Google Tag Manager head-->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-XXXXX');
</script>
<-- End Google Tag Manager -->
<!-- Google Tag Manager (noscript) body-->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-XXXXX"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
<script>
document.querySelector('***Exemplo: #gatsby-focus-wrapper > div >***').addEventListener('click',function ()
{
console.log(' clicked button')
dataLayer.push({
'event': '***nome do evento***'
})
})
</script>
<script>
document.querySelector('***Exemplo: #form-673123***').addEventListener('click', function(event) {
event.preventDefault();
console.log('formulario enviado');
dataLayer.push({
'event': '***nome do evento***'
});
});
</script>
<script async src="https://www.googletagmanager.com/gtag/js?id=AW-XXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'AW-XXXXXX'), {'allow_enhanced_conversions':true};
</script>
<script>
gtag('set', 'user_data', { email: g_ECObj.email, phone_number: g_ECObj.phone_number });
gtag('event', 'conversion', {'send_to': 'AW-XXXXX/XXXXXX'});
</script>
<script>
window.addEventListener('message', function(e) {
try {
var jsonData = JSON.parse(e.data);
if (jsonData.hasOwnProperty('data') && jsonData.data.eventType =='inputStaging') {
console.log("MENSAJE ENVIADO");
dataLayer.push({
'event':'messageSent'
})
}
}
catch (x) { }
});
</script>
Para capturar o email ou telefone, insira os códigos a seguir como uma variável do tipo JavaScript Personalizado
Email
function() {
var regex = /\S+@\S+.\S+/;
var email = document.querySelector('SELETOR_AQUI').value;
if(!email) return;
if(!regex.test(email.value)) return;
return email.value;
}
Telefone
function() {
var g_countryCode = "55";
var g_getPhone = document.querySelector('SELETOR_AQUI').value;
g_getPhone = g_countryCode + g_getPhone;
g_getPhone = g_getPhone.replace(/\D/g, '')
if(g_getPhone.length >= 11 && g_getPhone.length <= 15) {
return "+" + g_getPhone
}
}
by @glalejandro updated 16/07/2024
Organize seu código aqui: