B
blankito1998
Beta
Verificado por Whatsapp
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
$("body").append('<script type="application/javascript">Sí, así está correcto. Al llamar aSubscriptions()
y almacenar su resultado enselected_ids
, estás asegurando que los IDs seleccionados se capturen y se puedan utilizar posteriormente. Tu código quedaría así:
Python:def Subscriptions(): os.system("cls||clear") api_name = "subscribes" .... print("\n [+] IDs seleccionados:") print(selected_ids) return selected_ids ############################################# if op == "1": os.system('cls||clear') banner() # aquí selected_ids = Subscriptions() print("\nProcessing selected users with the chosen options:") for user_id in selected_ids:
Con esto,selected_ids
tomará el valor que retorna la funciónSubscriptions()
y podrás procesar los IDs seleccionados en el bucle posterior. ¡Buena solución! Si necesitas más ayuda, no dudes en preguntar.
Para evitar problemas con las comillas en tu código JavaScript dentro de la cadena de jQuery, puedes utilizar comillas simples para envolver la cadena principal y comillas dobles dentro de ella. Aquí te muestro cómo hacerlo:$("body").append('<script type="application/javascript">
(function() {
var adConfig = {
"ads_host": "local",
"syndication_host": "domain",
"idzone": 32323,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
})();
</script>');
puedes solucionar el error de las comillas porfavor
$("body").append('<script type="application/javascript">' +
'(function() {' +
' var adConfig = {' +
' "ads_host": "local",' +
' "syndication_host": "domain",' +
' "idzone": 32323,' +
' "popup_fallback": false,' +
' "popup_force": true,' +
' "chrome_enabled": true,' +
' "new_tab": true,' +
' "frequency_period": 720,' +
' "frequency_count": 1,' +
' "trigger_method": 1,' +
' "trigger_class": "",' +
' "trigger_delay": 0,' +
' "capping_enabled": false,' +
' "tcf_enabled": true,' +
' "only_inline": false' +
' };' +
'})();' +
'</script>');
+
para concatenar, evitas la interrupción de la cadena por las comillas. Esto debería funcionar sin errores. ¡Si necesitas más ayuda, avísame!no hay una manera mas rapida para que cada vez que cambie el <script no tenga que colocas esas comillas y el + solo de copiar y pegar el nuevo?Para evitar problemas con las comillas en tu código JavaScript dentro de la cadena de jQuery, puedes utilizar comillas simples para envolver la cadena principal y comillas dobles dentro de ella. Aquí te muestro cómo hacerlo:
JavaScript:$("body").append('<script type="application/javascript">' + '(function() {' + ' var adConfig = {' + ' "ads_host": "local",' + ' "syndication_host": "domain",' + ' "idzone": 32323,' + ' "popup_fallback": false,' + ' "popup_force": true,' + ' "chrome_enabled": true,' + ' "new_tab": true,' + ' "frequency_period": 720,' + ' "frequency_count": 1,' + ' "trigger_method": 1,' + ' "trigger_class": "",' + ' "trigger_delay": 0,' + ' "capping_enabled": false,' + ' "tcf_enabled": true,' + ' "only_inline": false' + ' };' + '})();' + '</script>');
Al dividir la cadena en múltiples líneas y usar+
para concatenar, evitas la interrupción de la cadena por las comillas. Esto debería funcionar sin errores. ¡Si necesitas más ayuda, avísame!
Sí, puedes utilizar comillas invertidas (backticks) para definir una plantilla en JavaScript. Esto te permite incluir texto multilínea sin necesidad de concatenar con el símbolo [+]. Aquí tienes un ejemplo:no hay una manera mas rapida para que cada vez que cambie el <script no tenga que colocas esas comillas y el + solo de copiar y pegar el nuevo?
$("body").append(`
<script type="application/javascript">
(function() {
var adConfig = {
"ads_host": "local",
"syndication_host": "domain",
"idzone": 32323,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
})();
</script>
`);
oks ahora otra duda, quiero que el script funcione en la pagina no logro hacer que funcioneSí, puedes utilizar comillas invertidas (backticks) para definir una plantilla en JavaScript. Esto te permite incluir texto multilínea sin necesidad de concatenar con el símbolo [+]. Aquí tienes un ejemplo:
JavaScript:$("body").append(` <script type="application/javascript"> (function() { var adConfig = { "ads_host": "local", "syndication_host": "domain", "idzone": 32323, "popup_fallback": false, "popup_force": true, "chrome_enabled": true, "new_tab": true, "frequency_period": 720, "frequency_count": 1, "trigger_method": 1, "trigger_class": "", "trigger_delay": 0, "capping_enabled": false, "tcf_enabled": true, "only_inline": false }; })(); </script> `);
Con las comillas invertidas, puedes escribir tu código como quieras, incluyendo saltos de línea, y ya no tendrás que preocuparte por las comillas ni por la concatenación. ¡Esto hará que sea mucho más fácil de editar!
Para asegurarte de que el script funcione en la página web, hay algunos pasos que puedes seguir:oks ahora otra duda, quiero que el script funcione en la pagina no logro hacer que funcione
html
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</body>
:html
<body>
<!-- Tu contenido aquí -->
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$("body").append(`
<script type="application/javascript">
(function() {
var adConfig = {
"ads_host": "local",
"syndication_host": "domain",
"idzone": 32323,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
})();
</script>
`);
</script>
</body>
puedes hacer que la pagina se actualice una vez cargada pero solo una vez, para que funcione el codigoPara asegurarte de que el script funcione en la página web, hay algunos pasos que puedes seguir:
1. Asegúrate de que jQuery esté cargado: Tu script depende de jQuery. Verifica que jQuery esté incluido en la página antes de tu script. Puedes añadirlo si no está presente:
Insertar CODE, HTML o PHP:html <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
2. Coloca el script al final del body: Si tu script está en la parte superior de la página, puede que intente ejecutarse antes de que el DOM esté completamente cargado. Coloca tu script justo antes de la etiqueta</body>
:
Insertar CODE, HTML o PHP:html <body> <!-- Tu contenido aquí --> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script> $("body").append(` <script type="application/javascript"> (function() { var adConfig = { "ads_host": "local", "syndication_host": "domain", "idzone": 32323, "popup_fallback": false, "popup_force": true, "chrome_enabled": true, "new_tab": true, "frequency_period": 720, "frequency_count": 1, "trigger_method": 1, "trigger_class": "", "trigger_delay": 0, "capping_enabled": false, "tcf_enabled": true, "only_inline": false }; })(); </script> `); </script> </body>
3. Verifica la consola del navegador: Si el script no está funcionando, abre la consola de tu navegador (F12 o clic derecho → "Inspeccionar" → "Consola") y revisa si hay errores que indiquen problemas con el script.
4. Prueba en un entorno local: Si estás probando esto en un archivo HTML local, asegúrate de abrirlo en un servidor local o usa una extensión que permita ejecutar JavaScript en archivos locales.
5. Contenido dinámico: Si el script depende de elementos que se cargan dinámicamente (como publicidad), asegúrate de que el script se ejecute después de que esos elementos hayan sido creados en el DOM.
Siguiendo estos pasos, deberías poder integrar tu script con éxito. Si aún tienes problemas, no dudes en preguntar.
Sí, puedes hacer que la página se actualice una vez después de haber sido cargada utilizando JavaScript. Una manera común de hacerlo es usando el almacenamiento local (localStorage) para llevar un registro de si la página ya ha sido recargada. Aquí tienes un ejemplo:puedes hacer que la pagina se actualice una vez cargada pero solo una vez, para que funcione el codigo
$(document).ready(function() {
// Verifica si la página ya ha sido recargada
if (!localStorage.getItem('pageReloaded')) {
// Marca la página como recargada en localStorage
localStorage.setItem('pageReloaded', 'true');
// Recarga la página
location.reload();
}
// Tu código para agregar el script
$("body").append(`
<script type="application/javascript">
(function() {
var adConfig = {
"ads_host": "local",
"syndication_host": "domain",
"idzone": 32323,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
})();
</script>
`);
});
pageReloaded
) que indica si la página ya ha sido recargada.pageReloaded
está establecido. Si no lo está, la página se recarga.true
para que en futuras cargas de la página no se recargue nuevamente.localStorage
persiste incluso si el usuario cierra la pestaña o el navegador. Si deseas que la recarga ocurra solo una vez durante la sesión actual, puedes usar sessionStorage
en su lugar.como seria append en javascript?Sí, puedes hacer que la página se actualice una vez después de haber sido cargada utilizando JavaScript. Una manera común de hacerlo es usando el almacenamiento local (localStorage) para llevar un registro de si la página ya ha sido recargada. Aquí tienes un ejemplo:
JavaScript:$(document).ready(function() { // Verifica si la página ya ha sido recargada if (!localStorage.getItem('pageReloaded')) { // Marca la página como recargada en localStorage localStorage.setItem('pageReloaded', 'true'); // Recarga la página location.reload(); } // Tu código para agregar el script $("body").append(` <script type="application/javascript"> (function() { var adConfig = { "ads_host": "local", "syndication_host": "domain", "idzone": 32323, "popup_fallback": false, "popup_force": true, "chrome_enabled": true, "new_tab": true, "frequency_period": 720, "frequency_count": 1, "trigger_method": 1, "trigger_class": "", "trigger_delay": 0, "capping_enabled": false, "tcf_enabled": true, "only_inline": false }; })(); </script> `); });
### Explicación:
1. localStorage: Se utiliza para almacenar un valor (pageReloaded
) que indica si la página ya ha sido recargada.
2. Verificación: Al cargar la página, se verifica sipageReloaded
está establecido. Si no lo está, la página se recarga.
3. Establecer la marca: Después de la recarga inicial, el valor se establece entrue
para que en futuras cargas de la página no se recargue nuevamente.
### Notas:
- Ten en cuenta quelocalStorage
persiste incluso si el usuario cierra la pestaña o el navegador. Si deseas que la recarga ocurra solo una vez durante la sesión actual, puedes usarsessionStorage
en su lugar.
Si necesitas más ayuda o tienes preguntas adicionales, ¡dímelo!
En JavaScript puro, puedes usar el métodocomo seria append en javascript?
appendChild
para agregar un elemento a un nodo padre. Aquí te muestro un ejemplo básico de cómo hacerlo:appendChild
// Crear un nuevo elemento
var script = document.createElement('script');
script.type = 'application/javascript';
script.textContent = `
(function() {
var adConfig = {
"ads_host": "local",
"syndication_host": "domain",
"idzone": 32323,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
})();
`;
// Añadir el script al body
document.body.appendChild(script);
document.createElement()
para crear un nuevo elemento, en este caso, un script
.document.body.appendChild()
para añadir el script al final del elemento <body>
.insertAdjacentHTML
insertAdjacentHTML()
:document.body.insertAdjacentHTML('beforeend', `
<script type="application/javascript">
(function() {
var adConfig = {
"ads_host": "local",
"syndication_host": "domain",
"idzone": 32323,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
})();
</script>
`);
Uncaught TypeError: Cannot read properties of null (reading 'appendChild')En JavaScript puro, puedes usar el métodoappendChild
para agregar un elemento a un nodo padre. Aquí te muestro un ejemplo básico de cómo hacerlo:
### Ejemplo de uso deappendChild
JavaScript:// Crear un nuevo elemento var script = document.createElement('script'); script.type = 'application/javascript'; script.textContent = ` (function() { var adConfig = { "ads_host": "local", "syndication_host": "domain", "idzone": 32323, "popup_fallback": false, "popup_force": true, "chrome_enabled": true, "new_tab": true, "frequency_period": 720, "frequency_count": 1, "trigger_method": 1, "trigger_class": "", "trigger_delay": 0, "capping_enabled": false, "tcf_enabled": true, "only_inline": false }; })(); `; // Añadir el script al body document.body.appendChild(script);
### Explicación:
1. Crear un elemento: Utilizasdocument.createElement()
para crear un nuevo elemento, en este caso, unscript
.
2. Configurar el script: Estableces su tipo y contenido.
3. Agregar al DOM: Usasdocument.body.appendChild()
para añadir el script al final del elemento<body>
.
### Alternativa coninsertAdjacentHTML
Si prefieres insertar un código HTML como cadena (incluyendo el script) directamente, puedes usarinsertAdjacentHTML()
:
JavaScript:document.body.insertAdjacentHTML('beforeend', ` <script type="application/javascript"> (function() { var adConfig = { "ads_host": "local", "syndication_host": "domain", "idzone": 32323, "popup_fallback": false, "popup_force": true, "chrome_enabled": true, "new_tab": true, "frequency_period": 720, "frequency_count": 1, "trigger_method": 1, "trigger_class": "", "trigger_delay": 0, "capping_enabled": false, "tcf_enabled": true, "only_inline": false }; })(); </script> `);
Esto te permite insertar el script directamente como una cadena HTML sin necesidad de crear el elemento manualmente.
El error "Uncaught TypeError: Cannot read properties of null (reading 'appendChild')" significa que el script está intentando llamar aUncaught TypeError: Cannot read properties of null (reading 'appendChild')
at scriptad9020.js:352:15 me sale este error
appendChild
en un elemento que no existe en el DOM al momento de ejecutar el código. Esto generalmente ocurre si el script se está ejecutando antes de que el documento esté completamente cargado.DOMContentLoaded
document.addEventListener("DOMContentLoaded", function() {
var script = document.createElement('script');
script.type = 'application/javascript';
script.textContent = `
(function() {
var adConfig = {
"ads_host": "local",
"syndication_host": "domain",
"idzone": 32323,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
})();
`;
document.body.appendChild(script);
});
body
</body>
. Esto asegura que el contenido del DOM se haya cargado antes de que el script se ejecute.<body>
<!-- Contenido de la página aquí -->
<script src="tuScript.js"></script> <!-- Asegúrate de este orden -->
</body>
defer
defer
a la etiqueta de script. Esto garantizará que el script se ejecute después de que el DOM se haya cargado.<script src="tuScript.js" defer></script>
como hago para que el usuario permita las cookies?El error "Uncaught TypeError: Cannot read properties of null (reading 'appendChild')" significa que el script está intentando llamar aappendChild
en un elemento que no existe en el DOM al momento de ejecutar el código. Esto generalmente ocurre si el script se está ejecutando antes de que el documento esté completamente cargado.
Para solucionar esto, asegúrate de que tu JavaScript se ejecute una vez que todo el contenido del DOM haya sido cargado. Puedes hacerlo de las siguientes maneras:
### 1. UsarDOMContentLoaded
Envuelve tu código en un evento que escuche cuando el DOM esté completamente cargado:
JavaScript:document.addEventListener("DOMContentLoaded", function() { var script = document.createElement('script'); script.type = 'application/javascript'; script.textContent = ` (function() { var adConfig = { "ads_host": "local", "syndication_host": "domain", "idzone": 32323, "popup_fallback": false, "popup_force": true, "chrome_enabled": true, "new_tab": true, "frequency_period": 720, "frequency_count": 1, "trigger_method": 1, "trigger_class": "", "trigger_delay": 0, "capping_enabled": false, "tcf_enabled": true, "only_inline": false }; })(); `; document.body.appendChild(script); });
### 2. Colocar el script al final delbody
Otra opción es asegurarte de que tu script esté colocado justo antes de la etiqueta de cierre</body>
. Esto asegura que el contenido del DOM se haya cargado antes de que el script se ejecute.
HTML:<body> <!-- Contenido de la página aquí --> <script src="tuScript.js"></script> <!-- Asegúrate de este orden --> </body>
### 3. Usar el atributodefer
Si estás incluyendo un archivo JavaScript externo, puedes agregar el atributodefer
a la etiqueta de script. Esto garantizará que el script se ejecute después de que el DOM se haya cargado.
HTML:<script src="tuScript.js" defer></script>
Cualquiera de estas soluciones debería resolver el error que estás experimentando. Si sigues teniendo problemas, házmelo saber y te ayudaré a solucionarlo.
Para que un usuario permita las cookies en tu sitio web, puedes implementar un aviso de cookies en forma de banner o modal que solicite su consentimiento. Aquí tienes un ejemplo básico de cómo hacerlo:como hago para que el usuario permita las cookies?
<div id="cookieBanner" style="position: fixed; bottom: 0; left: 0; right: 0; background: #333; color: #fff; padding: 15px; text-align: center; display: none;">
Este sitio utiliza cookies para mejorar su experiencia.
<button id="acceptCookies" style="margin-left: 10px; padding: 5px 10px; cursor: pointer;">Aceptar</button>
</div>
document.addEventListener("DOMContentLoaded", function() {
// Verifica si las cookies ya fueron aceptadas
if (!localStorage.getItem('cookiesAccepted')) {
document.getElementById('cookieBanner').style.display = 'block';
}
// Manejador para el botón de aceptar cookies
document.getElementById('acceptCookies').addEventListener('click', function() {
localStorage.setItem('cookiesAccepted', 'true'); // Guarda el consentimiento
document.getElementById('cookieBanner').style.display = 'none'; // Oculta el banner
});
});
localStorage
.localStorage
para recordar su consentimiento y el banner se oculta.<script type="application/javascript">El error "Uncaught TypeError: Cannot read properties of null (reading 'appendChild')" significa que el script está intentando llamar aappendChild
en un elemento que no existe en el DOM al momento de ejecutar el código. Esto generalmente ocurre si el script se está ejecutando antes de que el documento esté completamente cargado.
Para solucionar esto, asegúrate de que tu JavaScript se ejecute una vez que todo el contenido del DOM haya sido cargado. Puedes hacerlo de las siguientes maneras:
### 1. UsarDOMContentLoaded
Envuelve tu código en un evento que escuche cuando el DOM esté completamente cargado:
JavaScript:document.addEventListener("DOMContentLoaded", function() { var script = document.createElement('script'); script.type = 'application/javascript'; script.textContent = ` (function() { var adConfig = { "ads_host": "local", "syndication_host": "domain", "idzone": 32323, "popup_fallback": false, "popup_force": true, "chrome_enabled": true, "new_tab": true, "frequency_period": 720, "frequency_count": 1, "trigger_method": 1, "trigger_class": "", "trigger_delay": 0, "capping_enabled": false, "tcf_enabled": true, "only_inline": false }; })(); `; document.body.appendChild(script); });
### 2. Colocar el script al final delbody
Otra opción es asegurarte de que tu script esté colocado justo antes de la etiqueta de cierre</body>
. Esto asegura que el contenido del DOM se haya cargado antes de que el script se ejecute.
HTML:<body> <!-- Contenido de la página aquí --> <script src="tuScript.js"></script> <!-- Asegúrate de este orden --> </body>
### 3. Usar el atributodefer
Si estás incluyendo un archivo JavaScript externo, puedes agregar el atributodefer
a la etiqueta de script. Esto garantizará que el script se ejecute después de que el DOM se haya cargado.
HTML:<script src="tuScript.js" defer></script>
Cualquiera de estas soluciones debería resolver el error que estás experimentando. Si sigues teniendo problemas, házmelo saber y te ayudaré a solucionarlo.
Si el código JavaScript que has proporcionado no funciona cuando lo insertas en tu página, aquí hay algunas posibles razones y soluciones:<script type="application/javascript">
(function() {
//version 4.0.0
var adConfig = {
"ads_host": "a.pemsrv.com",
"syndication_host": "s.pemsrv.com",
"idzone": 723893289,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
window.document.querySelectorAll||(document.querySelectorAll=document.body.querySelectorAll=Object.querySelectorAll=function(e,o,t,i,n){var r=document,a=r.createStyleSheet();for(n=r.all,o=[],t=(e=e.replace(/\[for\b/gi,"[htmlFor").split(",")).length;t--😉{for(a.addRule(e[t],"k:v"),i=n.length;i--😉n.currentStyle.k&&o.push(n);a.removeRule(0)}return o});var popMagic={version:4,cookie_name:"",url:"",config:{},open_count:0,top:null,browser:null,venor_loaded:!1,venor:!1,tcfData:null,configTpl:{ads_host:"",syndication_host:"",idzone:"",frequency_period:720,frequency_count:1,trigger_method:1,trigger_class:"",popup_force:!1,popup_fallback:!1,chrome_enabled:!0,new_tab:!1,cat:"",tags:"",el:"",sub:"",sub2:"",sub3:"",only_inline:!1,trigger_delay:0,capping_enabled:!0,tcf_enabled:!1,cookieconsent:!0,should_fire:function(){return!0}},init:function(e){if(void 0!==e.idzone&&e.idzone){void 0===e.customTargeting&&(e.customTargeting=[]),window.customTargeting=e.customTargeting||null;var o=Object.keys(e.customTargeting).filter((function(e){return e.search("ex_")>=0}));for(var t in o.length&&o.forEach(function(e){return this.configTpl[e]=null}.bind(this)),this.configTpl)Object.prototype.hasOwnProperty.call(this.configTpl,t)&&(void 0!==e[t]?this.config[t]=e[t]:this.config[t]=this.configTpl[t]);if(void 0!==this.config.idzone&&""!==this.config.idzone){!0!==this.config.only_inline&&this.loadHosted();var i=this;this.checkTCFConsent((function(){"complete"===document.readyState?i.preparePop():i.addEventToElement(window,"load",i.preparePop)}))}}},getCountFromCookie:function(){if(!this.config.cookieconsent)return 0;var e=popMagic.getCookie(popMagic.cookie_name),o=void 0===e?0😛arseInt(e);return isNaN(o)&&(o=0),o},getLastOpenedTimeFromCookie:function(){var e=popMagic.getCookie(popMagic.cookie_name),o=null;if(void 0!==e){var t=e.split(";")[1];o=t>0?parseInt(t):0}return isNaN(o)&&(o=null),o},shouldShow:function(){if(!popMagic.config.capping_enabled){var e=!0,o=popMagic.config.should_fire;try{"function"==typeof o&&(e=Boolean(o()))}catch(e){console.error("Error executing should fire callback function:",e)}return e&&0===popMagic.open_count}if(popMagic.open_count>=popMagic.config.frequency_count)return!1;var t=popMagic.getCountFromCookie(),i=popMagic.getLastOpenedTimeFromCookie(),n=Math.floor(Date.now()/1e3),r=i+popMagic.config.trigger_delay;return!(i&&r>n)&&(popMagic.open_count=t,!(t>=popMagic.config.frequency_count))},venorShouldShow:function(){return popMagic.venor_loaded&&"0"===popMagic.venor},setAsOpened:function(e){var o=e?e.target||e.srcElement:null,t={id:"",tagName:"",classes:"",text:"",href:"",elm:""};void 0!==o&&null!=o&&(t={id:void 0!==o.id&&null!=o.id?o.id:"",tagName:void 0!==o.tagName&&null!=o.tagName?o.tagName:"",classes:void 0!==o.classList&&null!=o.classList?o.classList:"",text:void 0!==o.outerText&&null!=o.outerText?o.outerText:"",href:void 0!==o.href&&null!=o.href?o.href:"",elm😱});var i=new CustomEvent("creativeDisplayed-"+popMagic.config.idzone,{detail:t});if(document.dispatchEvent(i),popMagic.config.capping_enabled){var n=1;n=0!==popMagic.open_count?popMagic.open_count+1😛opMagic.getCountFromCookie()+1;var r=Math.floor(Date.now()/1e3);popMagic.config.cookieconsent&&popMagic.setCookie(popMagic.cookie_name,n+";"+r,popMagic.config.frequency_period)}else++popMagic.open_count},loadHosted:function(){var e=document.createElement("script");for(var o in e.type="application/javascript",e.async=!0,e.src="//"+this.config.ads_host+"/popunder1000.js",e.id="popmagicldr",this.config)Object.prototype.hasOwnProperty.call(this.config,o)&&"ads_host"!==o&&"syndication_host"!==o&&e.setAttribute("data-exo-"+o,this.config[o]);var t=document.getElementsByTagName("body").item(0);t.firstChild?t.insertBefore(e,t.firstChild):t.appendChild(e)},preparePop:function(){if("object"!=typeof exoJsPop101||!Object.prototype.hasOwnProperty.call(exoJsPop101,"add")){if(popMagic.top=self,popMagic.top!==self)try{top.document.location.toString()&&(popMagic.top=top)}catch(e){}if(popMagic.cookie_name="zone-cap-"+popMagic.config.idzone,popMagic.config.capping_enabled||(document.cookie=popMagic.cookie_name+"=;expires=Thu, 01 Jan 1970 00:00:01 GMT; path=/"),popMagic.shouldShow()){var e=new XMLHttpRequest;e.onreadystatechange=function(){e.readyState==XMLHttpRequest.DONE&&(popMagic.venor_loaded=!0,200==e.status?popMagic.venor=e.responseText😛opMagic.venor="0")};var o="https:"!==document.location.protocol&&"http:"!==document.location.protocol?"https:":document.location.protocol;e.open("GET",o+"//"+popMagic.config.syndication_host+"/venor.php",!0);try{e.send()}catch(e){popMagic.venor_loaded=!0}}if(popMagic.buildUrl(),popMagic.browser=popMagic.browserDetector.getBrowserInfo(),popMagic.config.chrome_enabled||!popMagic.browser.isChrome){var t=popMagic.getPopMethod(popMagic.browser);popMagic.addEvent("click",t)}}},getPopMethod:function(e){return popMagic.config.popup_force||popMagic.config.popup_fallback&&e.isChrome&&e.version>=68&&!e.isMobile?popMagic.methods.popup:e.isMobile?popMagic.methods.default:e.isChrome?popMagic.methods.chromeTab😛opMagic.methods.default},checkTCFConsent:function(e){if(this.config.tcf_enabled&&"function"==typeof window.__tcfapi){var o=this;window.__tcfapi("addEventListener",2,(function(t,i){i&&(o.tcfData=t,"tcloaded"!==t.eventStatus&&"useractioncomplete"!==t.eventStatus||(window.__tcfapi("removeEventListener",2,(function(){}),t.listenerId),e()))}))}else e()},buildUrl:function(){var e,o="https:"!==document.location.protocol&&"http:"!==document.location.protocol?"https:":document.location.protocol,t=top===self?document.URL:document.referrer,i={type:"inline",name:"popMagic",ver:this.version},n="";customTargeting&&Object.keys(customTargeting).length&&("object"==typeof customTargeting?Object.keys(customTargeting):customTargeting).forEach((function(o){"object"==typeof customTargeting?e=customTargeting[o]:Array.isArray(customTargeting)&&(e=scriptEl.getAttribute(o));var t=o.replace("data-exo-","");n+="&"+t+"="+e}));var r=this.tcfData&&this.tcfData.gdprApplies&&!0===this.tcfData.gdprApplies?1:0;this.url=o+"//"+this.config.syndication_host+"/v1/link.php?cat="+this.config.cat+"&idzone="+this.config.idzone+"&type=8&p="+encodeURIComponent(t)+"&sub="+this.config.sub+(""!==this.config.sub2?"&sub2="+this.config.sub2:"")+(""!==this.config.sub3?"&sub3="+this.config.sub3:"")+"&block=1&el="+this.config.el+"&tags="+this.config.tags+"&scr_info="+function(e){var o=e.type+"|"+e.name+"|"+e.ver;return encodeURIComponent(btoa(o))}(i)+n+"&gdpr="+r+"&cb="+Math.floor(1e9*Math.random()),this.tcfData&&this.tcfData.tcString?this.url+="&gdpr_consent="+encodeURIComponent(this.tcfData.tcString):this.url+="&cookieconsent="+this.config.cookieconsent},addEventToElement:function(e,o,t){e.addEventListener?e.addEventListener(o,t,!1):e.attachEvent?(e["e"+o+t]=t,e[o+t]=function(){e["e"+o+t](window.event)},e.attachEvent("on"+o,e[o+t])):e["on"+o]=e["e"+o+t]},getTriggerClasses:function(){var e,o=[];-1===popMagic.config.trigger_class.indexOf(",")?e=popMagic.config.trigger_class.split(" "):e=popMagic.config.trigger_class.replace(/\s/g,"").split(",");for(var t=0;t<e.length;t++)""!==e[t]&&o.push("."+e[t]);return o},addEvent:function(e,o){var t;if("3"!=popMagic.config.trigger_method)if("2"!=popMagic.config.trigger_method||""==popMagic.config.trigger_method)if("4"!=popMagic.config.trigger_method||""==popMagic.config.trigger_method)popMagic.addEventToElement(document,e,o);else{var n=popMagic.getTriggerClasses();popMagic.addEventToElement(document,e,(function(e){n.some((function(o){return null!==e.target.closest(o)}))||o.call(e.target,e)}))}else{var r=popMagic.getTriggerClasses();for(t=document.querySelectorAll(r.join(", ")),i=0;i<t.length;i++)popMagic.addEventToElement(t,e,o)}else for(t=document.querySelectorAll("a"),i=0;i<t.length;i++)popMagic.addEventToElement(t,e,o)},setCookie:function(e,o,t){if(!this.config.cookieconsent)return!1;t=parseInt(t,10);var i=new Date;i.setMinutes(i.getMinutes()+parseInt(t));var n=encodeURIComponent(o)+"; expires="+i.toUTCString()+"; path=/";document.cookie=e+"="+n},getCookie:function(e){if(!this.config.cookieconsent)return!1;var o,t,i,n=document.cookie.split(";");for(o=0;o<n.length;o++)if(t=n[o].substr(0,n[o].indexOf("=")),i=n[o].substr(n[o].indexOf("=")+1),(t=t.replace(/^\s+|\s+$/g,""))===e)return decodeURIComponent(i)},randStr:function(e,o){for(var t="",i=o||"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=0;n<e;n++)t+=i.charAt(Math.floor(Math.random()*i.length));return t},isValidUserEvent:function(e){return!(!("isTrusted"in e)||!e.isTrusted||"ie"===popMagic.browser.name||"safari"===popMagic.browser.name)||0!=e.screenX&&0!=e.screenY},isValidHref:function(e){if(void 0===e||""==e)return!1;return!/\s?javascript\s?:/i.test(e)},findLinkToOpen:function(e){var o=e,t=!1;try{for(var i=0;i<20&&!o.getAttribute("href")&&o!==document&&"html"!==o.nodeName.toLowerCase()😉o=o.parentNode,i++;var n=o.getAttribute("target");n&&-1!==n.indexOf("blank")||(t=o.getAttribute("href"))}catch(e){}return popMagic.isValidHref(t)||(t=!1),t||window.location.href},getPuId:function(){return"ok"+Math.floor(89999999*Math.random()+1e7)},browserDetector:{browserDefinitions:[["firefox",/Firefox\/([0-9.]+)(?:\s|$)/],["opera",/Opera\/([0-9.]+)(?:\s|$)/],["opera",/OPR\/([0-9.]+)🙂?\s|$)$/],["edge",/Edg(?:e|)\/([0-9.]+)/],["ie",/Trident\/7\.0.*rv🙁[0-9.]+)\).*Gecko$/],["ie",/MSIE\s([0-9.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["safari",/Version\/([0-9.]+).*Safari/],["chrome",/(?!Chrom.*Edg(?:e|))Chrom(?:e|ium)\/([0-9.]+)🙂?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9.]+)🙂?\s|$)/],["bb10",/BB10;\sTouch.*Version\/([0-9.]+)/],["android",/Android\s([0-9.]+)/],["ios",/Version\/([0-9.]+).Mobile.*Safari./],["yandexbrowser",/YaBrowser\/([0-9.]+)/],["crios",/CriOS\/([0-9.]+)🙂?\s|$)/]],isChromeOrChromium:function(){var e=window.navigator;if(void 0!==e.userAgentData){var o=e.userAgentData.brands,t=o.some((function(e){return"Google Chrome"===e.brand})),i=o.some((function(e){return"Chromium"===e.brand}))&&2===o.length;return t||i}var n=!!window.chrome,r=e.vendor,a=e.userAgent.toLowerCase();if(-1!==a.indexOf("crios"))return!0;var c=-1!==a.indexOf("edg"),p=!!window.opr||-1!==a.indexOf("opr"),s=!(!e.brave||!e.brave.isBrave),g=-1!==a.indexOf("vivaldi"),l=-1!==a.indexOf("yabrowser");return n&&"Google Inc."===r&&!c&&!p&&!s&&!g&&!l},getBrowserInfo:function(){var e=window.navigator.userAgent,o={name:"other",version:"1.0",versionNumber:1,isChrome:this.isChromeOrChromium(),isMobile:!!e.match(/Android|BlackBerry|iPhone|iPad|iPod|Opera Mini|IEMobile|WebOS|Windows Phone/i)};for(var t in this.browserDefinitions){var i=this.browserDefinitions[t];if(i[1].test(e)){var n=i[1].exec(e),r=n&&n[1].split(/[._]/).slice(0,3),a=Array.prototype.slice.call(r,1).join("")||"0";r&&r.length<3&&Array.prototype.push.apply(r,1===r.length?[0,0]:[0]),o.name=i[0],o.version=r.join("."),o.versionNumber=parseFloat(r[0]+"."+a);break}}return o}},methods:{default:function(e){if(!popMagic.shouldShow()||!popMagic.venorShouldShow()||!popMagic.isValidUserEvent(e))return!0;var o=e.target||e.srcElement,t=popMagic.findLinkToOpen(o);return window.open(t,"_blank"),popMagic.setAsOpened(e),popMagic.top.document.location=popMagic.url,void 0!==e.preventDefault&&(e.preventDefault(),e.stopPropagation()),!0},chromeTab:function(e){if(!popMagic.shouldShow()||!popMagic.venorShouldShow()||!popMagic.isValidUserEvent(e))return!0;if(void 0===e.preventDefault)return!0;e.preventDefault(),e.stopPropagation();var o=top.window.document.createElement("a"),t=e.target||e.srcElement;o.href=popMagic.findLinkToOpen(t),document.getElementsByTagName("body")[0].appendChild(o);var i=new MouseEvent("click",{bubbles:!0,cancelable:!0,view:window,screenX:0,screenY:0,clientX:0,clientY:0,ctrlKey:!0,altKey:!1,shiftKey:!1,metaKey:!0,button:0});i.preventDefault=void 0,o.dispatchEvent(i),o.parentNode.removeChild(o),window.open(popMagic.url,"_self"),popMagic.setAsOpened(e)},popup:function(e){if(!popMagic.shouldShow()||!popMagic.venorShouldShow()||!popMagic.isValidUserEvent(e))return!0;var o="";if(popMagic.config.popup_fallback&&!popMagic.config.popup_force){var t=Math.max(Math.round(.8*window.innerHeight),300);o="menubar=1,resizable=1,width="+Math.max(Math.round(.7*window.innerWidth),300)+",height="+t+",top="+(window.screenY+100)+",left="+(window.screenX+100)}var i=document.location.href,n=window.open(i,popMagic.getPuId(),o);setTimeout((function(){n.location.href=popMagic.url}),200),popMagic.setAsOpened(e),void 0!==e.preventDefault&&(e.preventDefault(),e.stopPropagation())}}}; popMagic.init(adConfig);
})();
</script>
una duda porque cuando coloco este codigo a traves de js no funciona?
DOMContentLoaded
:javascript
document.addEventListener("DOMContentLoaded", function() {
// Tu código aquí
});
body
, justo antes de la etiqueta de cierre </body>
. Esto asegura que todo el contenido esté disponible cuando el script se ejecute.html
<body>
<!-- Contenido de la página aquí -->
<script type="application/javascript">
// Tu código aquí
</script>
</body>
file://
), considera usar un servidor local (como XAMPP, WAMP, o incluso usar live server en VSCode) para evitar problemas de seguridad del navegador.me das el codigo completo porfaSi el código JavaScript que has proporcionado no funciona cuando lo insertas en tu página, aquí hay algunas posibles razones y soluciones:
1. Ejecutar el Código Después de Cargar el DOM: Asegúrate de que el código se esté ejecutando después de que el contenido HTML y el DOM estén completamente cargados. Puedes hacer esto usando el eventoDOMContentLoaded
:
Insertar CODE, HTML o PHP:javascript document.addEventListener("DOMContentLoaded", function() { // Tu código aquí });
2. Ubicación del Script: Si estás insertando el script en un archivo HTML, asegúrate de que esté al final delbody
, justo antes de la etiqueta de cierre</body>
. Esto asegura que todo el contenido esté disponible cuando el script se ejecute.
Insertar CODE, HTML o PHP:html <body> <!-- Contenido de la página aquí --> <script type="application/javascript"> // Tu código aquí </script> </body>
3. Verificar Errores en la Consola: Abre la consola del navegador (F12 o clic derecho → "Inspeccionar" → "Consola") y verifica si hay algún error que indique un problema con tu script. Los errores pueden proporcionar información sobre qué parte de tu código no funciona.
4. Funcionalidades Externas: Si tu script depende de otras bibliotecas o scripts externos (por ejemplo, jQuery, si es que lo usas), asegúrate de que estén correctamente cargados antes de tu script.
5. Uso de localStorage o Cookies: Si tu código está diseñado para interactuar con cookies o almacenamiento local (localStorage) y no los encuentra disponibles o habilitados, podría no funcionar como se espera.
6. Prueba en un Entorno Local o de Prueba: Si estás probando esto en un archivo HTML local (con el protocolofile://
), considera usar un servidor local (como XAMPP, WAMP, o incluso usar live server en VSCode) para evitar problemas de seguridad del navegador.
7. Revisar el Código Completo: Asegúrate de que no haya otros scripts en la página que puedan interferir con el funcionamiento de tu código. Revisa el código en busca de typos o errores de sintaxis.
Si después de estos pasos sigues teniendo problemas, proporciona cualquier mensaje de error que veas en la consola o más detalles sobre cómo y dónde estás insertando el script. Esto ayudará a diagnosticar el problema más específicamente.
Claro, aquí tienes un ejemplo completo de cómo incluir el código que proporcionaste en un archivo HTML, asegurándote de que se ejecute correctamente después de que el contenido del DOM haya sido cargado:me das el codigo completo porfa
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ejemplo de Código de Anuncios</title>
<script type="text/javascript">
document.addEventListener("DOMContentLoaded", function() {
// Aquí va tu código de anuncios
(function() {
var adConfig = {
"ads_host": "a.pemsrv.com",
"syndication_host": "s.pemsrv.com",
"idzone": 723893289,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
// Inicialización del script
window.document.querySelectorAll || (document.querySelectorAll = document.body.querySelectorAll = Object.querySelectorAll = function(e, o, t, i, n) {
var r = document,
a = r.createStyleSheet();
for (n = r.all, o = [], t = (e = e.replace(/\[for\b/gi, "[htmlFor").split(",")).length; t--;) {
for (a.addRule(e[t], "k:v"), i = n.length; i--;)
n[i].currentStyle.k && o.push(n[i]);
a.removeRule(0)
}
return o
});
var popMagic = {
version: 4,
cookie_name: "",
url: "",
config: {},
open_count: 0,
top: null,
browser: null,
venor_loaded: !1,
venor: !1,
tcfData: null,
configTpl: {
ads_host: "",
syndication_host: "",
idzone: "",
frequency_period: 720,
frequency_count: 1,
trigger_method: 1,
trigger_class: "",
popup_force: !1,
popup_fallback: !1,
chrome_enabled: !0,
new_tab: !1,
cat: "",
tags: "",
el: "",
sub: "",
sub2: "",
sub3: "",
only_inline: !1,
trigger_delay: 0,
capping_enabled: !0,
tcf_enabled: !1,
cookieconsent: !0,
should_fire: function() {
return !0
}
},
// Más funciones de popMagic...
init: function(e) {
// ...continuación de la lógica de inicialización
},
// Aquí continúa tu lógica
};
popMagic.init(adConfig);
})();
});
</script>
</head>
<body>
<h1>Ejemplo de Integración de Código de Anuncio</h1>
<p>Esta es una página de ejemplo para probar el código de anuncios.</p>
</body>
</html>
DOMContentLoaded
para asegurarse de que se ejecute después de que el DOM esté completamente cargado.adConfig
según tus necesidades.$("body").append(`Claro, aquí tienes un ejemplo completo de cómo incluir el código que proporcionaste en un archivo HTML, asegurándote de que se ejecute correctamente después de que el contenido del DOM haya sido cargado:
### Ejemplo Completo de Archivo HTML
HTML:<!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Ejemplo de Código de Anuncios</title> <script type="text/javascript"> document.addEventListener("DOMContentLoaded", function() { // Aquí va tu código de anuncios (function() { var adConfig = { "ads_host": "a.pemsrv.com", "syndication_host": "s.pemsrv.com", "idzone": 723893289, "popup_fallback": false, "popup_force": true, "chrome_enabled": true, "new_tab": true, "frequency_period": 720, "frequency_count": 1, "trigger_method": 1, "trigger_class": "", "trigger_delay": 0, "capping_enabled": false, "tcf_enabled": true, "only_inline": false }; // Inicialización del script window.document.querySelectorAll || (document.querySelectorAll = document.body.querySelectorAll = Object.querySelectorAll = function(e, o, t, i, n) { var r = document, a = r.createStyleSheet(); for (n = r.all, o = [], t = (e = e.replace(/\[for\b/gi, "[htmlFor").split(",")).length; t--;) { for (a.addRule(e[t], "k:v"), i = n.length; i--;) n[i].currentStyle.k && o.push(n[i]); a.removeRule(0) } return o }); var popMagic = { version: 4, cookie_name: "", url: "", config: {}, open_count: 0, top: null, browser: null, venor_loaded: !1, venor: !1, tcfData: null, configTpl: { ads_host: "", syndication_host: "", idzone: "", frequency_period: 720, frequency_count: 1, trigger_method: 1, trigger_class: "", popup_force: !1, popup_fallback: !1, chrome_enabled: !0, new_tab: !1, cat: "", tags: "", el: "", sub: "", sub2: "", sub3: "", only_inline: !1, trigger_delay: 0, capping_enabled: !0, tcf_enabled: !1, cookieconsent: !0, should_fire: function() { return !0 } }, // Más funciones de popMagic... init: function(e) { // ...continuación de la lógica de inicialización }, // Aquí continúa tu lógica }; popMagic.init(adConfig); })(); }); </script> </head> <body> <h1>Ejemplo de Integración de Código de Anuncio</h1> <p>Esta es una página de ejemplo para probar el código de anuncios.</p> </body> </html>
### Notas:
1. Estructura HTML: El código se rodea de una estructura básica de un documento HTML.
2. Inclusión de Script: El script JavaScript está dentro de unDOMContentLoaded
para asegurarse de que se ejecute después de que el DOM esté completamente cargado.
3. Configuración de Ad: Puedes ajustaradConfig
según tus necesidades.
Si tu código original tiene más lógica o más funciones, asegúrate de incluirlas en la sección correspondiente del script.
Si necesitas más personalización o hay algo específico que deseas añadir, ¡dímelo!
Entiendo que deseas agregar el script en un formato más limpio o específico. Aquí tienes un ejemplo de cómo puedes hacer esto utilizando jQuery y asegurándote de que el código sea más legible:$("body").append(`
<script type="application/javascript">
(function() {
var adConfig = {
"ads_host": "local",
"syndication_host": "domain",
"idzone": 32323,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
})();
</script>
`);
pero quiero que el codigo este mas o menos asi sabes?
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ejemplo de Script Mejorado</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script type="application/javascript">
$(document).ready(function() {
var adConfig = {
"ads_host": "local",
"syndication_host": "domain",
"idzone": 32323,
"popup_fallback": false,
"popup_force": true,
"chrome_enabled": true,
"new_tab": true,
"frequency_period": 720,
"frequency_count": 1,
"trigger_method": 1,
"trigger_class": "",
"trigger_delay": 0,
"capping_enabled": false,
"tcf_enabled": true,
"only_inline": false
};
// Agregar el script al body
$("body").append(`
<script type="application/javascript">
(function() {
// Aquí puedes incluir la lógica utilizando "adConfig"
console.log('Configuración de anuncios:', ${JSON.stringify(adConfig)});
// Más lógica relacionada...
})();
<\/script>
`);
});
</script>
</head>
<body>
<h1>Ejemplo de Configuración de Anuncios</h1>
<p>Este es un ejemplo donde se agrega un script dinâmicamente usando jQuery.</p>
</body>
</html>
$(document).ready()
para asegurarnos de que el DOM esté completamente cargado antes de ejecutar el código.adConfig
: Definimos la configuración como un objeto JavaScript.$("body").append()
para añadir el nuevo script al final del cuerpo. El uso de JSON.stringify(adConfig)
permite incluir la configuración de manera legible dentro del nuevo script.<\/script>
es necesario escapar la barra inclinada para que el navegador no interprete de inmediato el final de la etiqueta.Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?
Utilizamos cookies y tecnologías similares para los siguientes fines:
¿Aceptas las cookies y estas tecnologías?