Просмотр локальных сохраненных HTML5 и javascript в ios14

#javascript #html #css #ios

#javascript #HTML #css #iOS

Вопрос:

Я очень мало знаю о HTML5 и Javascript, однако то, что я использовал для работы с ios13. Предыстория в том, что у меня есть скрипт на Python, который анализирует набор данных, а затем записывает html-файл для сохранения в виде отчета. HTML-файл содержит Javascript и CSS, а не ссылается на внешние файлы .js и .css. Изображения кодируются как base64, чтобы их можно было встроить в HTML. Это позволяет использовать один единственный файл, который можно сохранить, отправить по электронной почте и т. Д.

До ios14, когда кто-то отправлял мне по электронной почте выходной html-код, я мог открыть его на своем iphone и открыть различные разделы (использует javascript). Однако, начиная с ios14, я больше не могу открывать разделы, поэтому предположим, что ios14 блокирует работу javascript в предварительном просмотре html. Если я помещаю один из этих HTML-файлов на веб-сервер и перехожу к ним через Safari, то javascript работает нормально. Ниже используется javascript, я взял функцию из примеров IRC школ W3C.

 <script>
<var coll = document.getElementsByClassName("collapsible");
var i;

for (i = 0; i < coll.length; i  ) {
  coll[i].addEventListener("click", function() {
    this.classList.toggle("active");
    var content = this.nextElementSibling;
    if (content.style.maxHeight){
      content.style.maxHeight = null;
    } else {
      content.style.maxHeight = content.scrollHeight   "px";
    } 
  });
}

function changeImage(element) {
  document.getElementById('imageReplace').src = element;
}
    </script>
 

CSS, используемый для сворачиваемых разделов, является:

 .collapsible {

    cursor: pointer;
    border: none;
    text-align: left;
    outline: none;
}
  
.collapsible:hover {
    background-color: #45484b;
    
}
  
.collapsible:after {
    content: '02B';
    float: right;
}
  
.active:after {
    content: "2212";
}
  
.content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.2s ease-out;
 }
 

Отдельные сворачиваемые разделы создаются с использованием следующего html:

 <section id="section_name">
    <h2 class="collapsible">Section Header</h2>
        <div class="content">
All HTML that i want to appear and disappear by clicking on H2
        </div>
</section>
 

У меня нет учетной записи разработчика Apple, поэтому я не уверен, были ли какие-либо изменения в безопасности в ios14 и каким будет обходной путь.

Комментарии:

1. Когда вы говорите, что раньше могли открывать «это» на своем телефоне, вы имеете в виду, что могли полностью просматривать содержимое письма в своем почтовом клиенте или используете что-то еще для его просмотра?

2. Извините за очень поздний ответ. Да, проблема заключалась в том, что до ios 14, когда я получал HTML-файл в виде вложения электронной почты, я мог щелкнуть по нему, и javascript работал бы так, что я мог нажимать на различные заголовки H2, и javascript открывал складной раздел. В ios14 я все еще могу открыть вложение HTML, но javascript, похоже, не разрешен для запуска, я нажимаю на заголовки H2, но раздел не открывается.