Probleme HTML dans design jeedom 4.4.2

Non toujours pas d’affichage mais je n’ai plus de lignes d’erreurs dans la console

J’ai supprimé tous mes widgets qui avaient un problème d’affichage mais toujours pas de réponse à la commande onclick
j’ai même une erreur qui s’affiche dans ma console:Uncaught (in promise) Error: A listener indicated an asynchronous response by returning true, but the message channel closed before a response was received

J’ai retapé le code dans ma console rien ne s’affiche mais j’ai maintenant un message d’erreur dans la console:Uncaught ReferenceError: id is not defined
at :1:22

et juste ça?

Non rien ne s’affiche

je reprends ici, ayant du mal à comprendre ce qui se passe
Déjà, faites la MAJ en 4.4.3 si ce n’est pas fait

je viens de faire un test:

j’ai repris votre syntaxe, et ça fonctionne chez moi en 4.4.3

je pense qu’il y a autre chose qui rentre en compte mais je mets pas la main dessus n’étant pas devant

Pour info, voici dans le futur ce qu’il faudra faire (et que vous pouvez modifier dès à présent):

document.querySelector('[data-plan_id="25"]').addClass('hidden');

dans le futur, il faudra utiliser cette syntaxe pour cacherau lieu de

$('[data-plan_id="25"]').hide();

et

document.querySelector('[data-plan_id="25"]').removeClass('hidden');

pour afficher, au lieu de

$('[data-plan_id="25"]').show();

et pour les div (ceux avec #)

document.getElementById("page_temperatures_tab").addClass('hidden');

au lieu de

$("#page_temperatures_tab").hide();

etc

Bonjour
J’ai fait ceci, j’étais dans le même cas que toi:

Dis moi si cela marche de nouveau ?

ah merci pour l’info, comme quoi! meme si c’est pas tout à fait le même cas, c’est le même symptôme

lapinbiche a quelques tests à faire je pense :stuck_out_tongue:

merci pour lui :wink:

En espérant que cela marche pour lui, j’en ai enfin fini avec cette maj :sweat_smile:

Bonjour
désolé mais pour moi cela ne marche pas
Cela ne pourrait il pas venir de la fonction onClick qui commande tout cela?
et surtout cela fais 10 que cela marchait au poil

C’est bizarre , j’ai les mêmes fonctions et c’est ok pour moi…
Il faudrait que tu ailles sur adminer.php, tu vas dans la table plan est tu me dis ce que tu as avec l’id 25 ([data-plan_id=« 25 »]) dans Position: {« top »:X,« left »:X} et display {« height »:X,« width »:X,…}

Bonjour
Dis moi dans le futur jquery va disparaitre de Jeedom, le mieux c’est d’utiliser :

document.querySelector('[data-plan_id="25"]').addClass('hidden');
document.querySelector('[data-plan_id="25"]').removeClass('hidden');

Cette ligne :

$("#page_clickable_tab").css({'width': '1278px', 'height': '748px', 'background-color': 'rgba(0,0,0,0.5)', 'cursor': 'pointer'});

Tu peux la remplacer par quoi sans jquery ?
Merci

on dirait que jeedom a pas implanté d’équivalent pour .css()

il faudra donc passer par .style =

let pct = document.getElementById("page_clickable_tab");
pct.style.width = '1278px';
pct.style.height = '748px';
pct.style.backgroundColor  = 'rgba(0,0,0,0.5)';
pct.style.cursor = 'pointer';

je pense que ça doit etre un truc comme ça :wink:

1 « J'aime »

bonjour
mes widgets ne se r’affichent pas lorsque je fais un show car dans element.style width et height ont été mis à zéro par jeedom ainsi que leur position top et left
si je les renseigne ils réapparaissent à condition que display soit bien repassé à block au lieu de none
lorsque j’ai fait la modif que vous aviez donné cela ne marchait pas du tout

j’ai essayé
document.querySelector(‹ [data-plan_id=« 158 »] ›).style.display = « none »;
et
document.querySelector(‹ [data-plan_id=« 158 »] ›).style.display = « block »;

cela marche un moment et ensuite je reperd mes valeurs heigh, width, top et left
la ligne
$(« #page_lumieres_tab »).hide();
et
$(« #page_lumieres_tab »).show();
sont elles pour quelque chose? Et comment l’écrire en javascript car c’est du jquery?

Nickel :grinning:

Voila ce que j’ai modifié, custom.js:

function hide_equipements() {
  document.querySelector('[data-plan_id="614"]').style.visibility='hidden';
  document.querySelector('[data-plan_id="686"]').style.visibility='hidden';
  document.getElementById("page_clickable_tab").removeAttribute('style');
}

function show_equipement(id) {
  document.querySelector('[data-plan_id="'+ id +'"]').style.visibility='visible';
  let pct = document.getElementById("page_clickable_tab");
  pct.style.width = '1278px';
  pct.style.height = '748px';
  pct.style.backgroundColor  = 'rgba(0,0,0,0.5)';
  pct.style.cursor = 'pointer';
}

custom.css:

div[data-plan_id="614"],
div[data-plan_id="686"]
{ 
  visibility:hidden;
}

J’ai pas trouver plus simple … Dans les parametre Jeedom j’ai coché « Core js (dev) », cela fonctionne bien sans jquery :grinning:

1 « J'aime »

Bonjour
merci pour votre aide
je vais essayer ça

vous êtes en debian 10 ou 11?

Debian 11 mais il n’y a pas d importance

J’ai attendu qqes jours pour être sur que ma config fonctionnait.
Donc pour l’affichage et le masquage de widgets sur mon design avec une commande (« onClick »)
j’utilise pour le css
[data-plan_id=« 25 »],
[data-plan_id=« 60 »],
[data-plan_id=« 28 »],
[data-plan_id=« 31 »],
[data-plan_id=« 153 »],
[data-plan_id=« 150 »],
[data-plan_id=« 151 »]

{
visibility:hidden;
}
et pour le js
function hide_temperatures() {
document.querySelector(‹ [data-plan_id=« 25 »] ›).style.visibility = « hidden »;
document.querySelector(‹ [data-plan_id=« 60 »] ›).style.visibility = « hidden »;
document.querySelector(‹ [data-plan_id=« 28 »] ›).style.visibility = « hidden »;
document.querySelector(‹ [data-plan_id=« 31 »] ›).style.visibility = « hidden »;
document.querySelector(‹ [data-plan_id=« 151 »] ›).style.visibility = « hidden »;
document.querySelector(‹ [data-plan_id=« 150 »] ›).style.visibility = « hidden »;
document.querySelector(‹ [data-plan_id=« 153 »] ›).style.visibility = « hidden »;
}
function show_temperatures(id) {
document.querySelector(‹ [data-plan_id=" ›+ id +‹ "] ›).style.visibility=‹ visible ›;
}
Merci

1 « J'aime »