B
blankito1998
Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
var intervayl = setInterval(function() {El comportamiento diferente entre tu PC y el teléfono puede deberse a varios factores relacionados con la compatibilidad, las diferencias en los navegadores móviles o la forma en que se manejan los iframes en dispositivos móviles. Aquí hay algunas cosas que podrías considerar para solucionar el problema:
### Posibles Causas y Soluciones
1. Compatibilidad del Navegador:
- Asegúrate de que el navegador en el dispositivo móvil sea compatible con los métodos que estás utilizando. Rara vez se presentan problemas de cross-browser, especialmente en dispositivos móviles.
2. Carga del Iframe:
- Puede ser que el iframe no esté completamente cargado cuando intentas acceder a su contenido. Puedes probar a agregar un manejador del eventoloadpara asegurarte de que el contenido del iframe esté disponible antes de intentar manipularlo.
Insertar CODE, HTML o PHP:javascript iframe.onload = function() { // Tu código aquí };
3. Restricciones de Medios en Moviles:
- Algunos navegadores móviles tienen restricciones en la reproducción automática de videos o audios, especialmente si están silenciados. Asegúrate de que el video esté permitido para reproducirse en el teléfono.
4. Diferencias en el Renderizado:
- A veces, los estilos CSS o el renderizado en móviles puede comportarse de manera diferente. Revisa si hay estilos que puedan estar afectando la visibilidad del iframe o del video.
5. Errores en la Consola:
- Utiliza las herramientas de desarrollo disponibles en los navegadores móviles (como la consola de JavaScript en Chrome) para ver si hay errores que se estén generando en el dispositivo y que no se están mostrando en la PC.
6. Elementos Dinámicos:
- Si el primer video aparece de manera dinámica (por ejemplo, mediante AJAX o una carga diferida), asegúrate de que el código que está gestionando su aparición está ejecutándose correctamente en el móvil.
### Ejemplo de Implementación cononload
A continuación, aquí tienes un ejemplo de cómo podrías implementar elonloadpara asegurarte de que el iframe se carga completamente antes de intentar manipularlo:
JavaScript:var intervayl = setInterval(function() { const mehoElements2 = document.querySelectorAll('.meho'); const atLeastOneVisible = Array.from(mehoElements2).some(mehos => { return window.getComputedStyle(mehos).display === 'block'; }); if (atLeastOneVisible) { const firstVisibleElement = Array.from(mehoElements2).find(mehos => window.getComputedStyle(mehos).display === 'block'); if (firstVisibleElement) { const $ilpro = firstVisibleElement.getAttribute("idcorm"); var iframe = document.querySelector(".meho[idcorm='" + $ilpro + "'] iframe.octumpro"); if (iframe) { iframe.onload = function() { var iframeWindow = iframe.contentWindow; var videopro = iframeWindow.document.getElementById('video-id'); if (videopro) { if (videopro.muted) { $(".acult1").css("background-image", "url(../wpp/img/bt1092.png)"); } else { $(".acult1").css("background-image", "url(../wpp/img/bt10920.png)"); } } }; } } } }, 1000);
### Conclusión
Revisa cada uno de estos aspectos para identificar qué podría estar causando el problema en el dispositivo móvil. Si el problema persiste, considera proporcionar más detalles específicos sobre el comportamiento en el teléfono y cualquier mensaje de error que puedas ver en la consola. ¡Buena suerte!
const mehoElements2 = document.querySelectorAll('.meho');
const atLeastOneVisible = Array.from(mehoElements2).some(mehos => {
return window.getComputedStyle(mehos).display === 'block';
});
if (atLeastOneVisible) {
const firstVisibleElement = Array.from(mehoElements2).find(mehos => window.getComputedStyle(mehos).display === 'block');
if (firstVisibleElement) {
const $ilpro = firstVisibleElement.getAttribute("idcorm");
var iframe = document.querySelector(".meho[idcorm='" + $ilpro + "'] iframe.octumpro");
if (iframe) {
iframe.onload = function() {
var iframeWindow = iframe.contentWindow;
var videopro = iframeWindow.document.getElementById('video-id');
if (videopro) {
alert("hola");
if (videopro.muted) {
$(".acult1").css("background-image", "url(../wpp/img/bt1092.png)");
} else {
$(".acult1").css("background-image", "url(../wpp/img/bt10920.png)");
}
}
};
}
}
}
}, 1000);
creo que ni siquiera detecta el meho visible porque no me manda la alerta

