Изменить класс в Toggler В динамически загружаемый HTML - PullRequest
0 голосов
/ 31 октября 2019

ФОН: (возможно, устранят решения, которые не будут работать с общим желаемым результатом.)

Для дисплея, который должен бытьЯ могу создать часы, которые можно просматривать часами, чтобы создать автоматическую перезагрузку, чтобы обновить отображаемую html-страницу, которая в противном случае отключается каждые 5 минут и требует нового входа в систему. [Я попробовал расширение Chrome под названием «Auto Refresh Plus», но «Refreshing» выдает всплывающее диалоговое окно, запрашивающее у пользователя подтверждение повторной отправки формы. Страница противостоит всем попыткам блокировки всплывающих окон. В результате я пытаюсь достичь своей цели с помощью Javascript.]

Я выполнил псевдоперезагрузку, но теперь должен решить ПРОБЛЕМУ, приведенную ниже.

ПРОБЛЕМА:

Страница, которую я хочу (повторно) загрузить, содержит переключаемые строки меню по бокам. Я хочу, чтобы новая страница открывалась, когда эти строки меню переключались в «закрытое» состояние (отображая, таким образом, дополнительную информацию), но по умолчанию они переключаются в «открытое».

В настоящее время я работаю над изменением имен классов для этих переключателей в качестве метода их «закрытия». (Для простоты я ограничу свое внимание здесь переключателем на восток, но все дублируется для переключения на запад.)

Мой HTML-код:

<body>
    <div class="imgbox">
        <object class="center-fit" id="numpage" type="text/html" data="https://alliancetruss.hippocmms.com/#/1/ent/1/fac/2"></object>
    </div>
</body>

Класс иid имеют отношение к моему css, но, как мне кажется, не относятся к моему JS, поэтому, пожалуйста, игнорируйте их.

Вместо того, чтобы напрямую отображать URL-адрес, я рассматриваю его как объект, что позволяет мне его заменять, что мой вышеупомянутый обходной путь обновления. Я думаю изменить класс релевантного с 'ui-layout-toggler-east-open' на 'ui-layout-toggler-east-closed'.

Мой JS:

var pageTime =10000;
var nextUrl = function() {  
    window.location.replace("file:///P:/Manufacturing/ProductionDisplay/Active/hippodisplay.html");      
    }
    window.onload = function() {
      setTimeout(nextUrl, this.pageTime);
      };

    addEventListener("DOMContentLoaded",() => {      
      var closeEastToggle = function() {
        document.getElementByClassName("ui-layout-toggler-east").className = document.getElementByClassName("ui-layout-toggler-east").className.replace( /(?:^|\s)ui-layout-toggler-east-open(?!\S)/g , '' );
              document.getElementByClassName("ui-layout-toggler-east").className += "ui-layout-toggler-east-closed";
      }
      closeEastToggle();     
        });

HTML для переключателя выглядит следующим образом. Когда страница загружается (по умолчанию):

<div id="" class="ui-layout-toggler ui-layout-toggler-east ui-layout-toggler-open ui-layout-toggler-east-open" title="Close" style="position: absolute; display: block; padding: 0px; margin: 0px; overflow: hidden; text-align: center; font-size: 1px; cursor: pointer; z-index: 1; visibility: visible; height: 50px; width: 8px; top: 393px; left: 0px;">::before</div>

Когда нажимается кнопка переключения, вышеизложенное меняется на:

<div id="" class="ui-layout-toggler ui-layout-toggler-east ui-layout-toggler-closed ui-layout-toggler-east-closed" title="Open" style="position: absolute; display: block; padding: 0px; margin: 0px; overflow: hidden; text-align: center; font-size: 1px; cursor: pointer; z-index: 1; visibility: visible; height: 50px; width: 8px; top: 393px; left: 0px;">::before</div>

Мой Javascript, приведенный выше, вполне может быть пародией. Возможно, я пытаюсь сделать что-то, что нельзя или нельзя. Я признаю, что я нахожусь над моей головой, я достоин презрения и приближаюсь к вещам в мулишском идиотизме. Все мои проблемы могут быть решены путем полного переосмысления жизни, отказа от технологий, принятия заказов, лежания в долгом сне смерти и т. Д.

Однако, в качестве эксперимента по размышлению над вашим разумным гневом, я надеюсь, что вы это сделаетерешить эту проблему.

...