Проверка элемента / инструментов разработчика иногда не дает результатов

#javascript #google-chrome #internet-explorer #firefox #browser

#javascript #google-chrome #internet-explorer #firefox #браузер

Вопрос:

Я могу запустить код javascript, и иногда он будет выдавать выходные данные, иногда нет. Если я подожду 5-20 минут, я могу вернуться, ничего не меняя, и это сработает. Пока я не перейду в другое место и обратно, а затем ничего. Это то же самое для firefox, IE и chrome. Я делаю довольно простой get.elementsByClassName, а затем в журнал консоли. Иногда это дает, а иногда нет. Я пытаюсь очистить данные со страницы демонстрационного брандмауэра sonicwall. https://realtime.demo.sonicwall.com/main.html

 var els = document.getElementsByClassName ('swlTabContainer 
swlTblContainer');
var csvString = []; 
for(i=0;i<els.length;i  )
{
csvString = els[i].innerText;
console.log(els[i].innerText);
}
var pom = document.createElement('a');
var csvContent=csvString; //here we load our csv data
var blob = new Blob([csvContent],{type: 'text/csv;charset=utf-8;'});
var url = URL.createObjectURL(blob);
pom.href = url;
pom.setAttribute('download', 'addgrp.csv');
pom.click();
  

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

1. Я понимаю ваше описание, можете ли вы опубликовать свой точный код с пошаговыми инструкциями. Иногда код дает лучшую идею, чем описание. Это может помочь нам узнать, что вы делаете в своем коде, что может помочь сузить проблему. Также сообщите нам, возникает ли эта проблема с каким-либо сайтом или это может произойти только с вышеупомянутым сайтом? Какую ОС (с версией сборки) вы используете в настоящее время?

2. Я только что отредактировал сообщение, чтобы включить код. Заранее спасибо.

3. Если вы запустите этот код на этой странице, этот конкретный код будет расположен в СЕТИ -> Адресные объекты -> группы адресов (нажмите кнопку группы адресов вверху). Иногда вы получаете данные, иногда нет, выполняя один и тот же код.

4. Мне интересно, как вы запустили приведенный выше код с IE? В Chrome мы можем вставить JS-код в консоль, но I не разрешает пользователю вставлять JS-код в свою консоль.

5. Я использую инструменты разработки IE и Chrome и проверяю элемент. У меня нет проблем с его вставкой в консоль браузера. Дело в том, что иногда он возвращает данные, иногда нет. Я могу запустить код, и он выдаст результаты, затем обновить ту же страницу, подождать 2 минуты и нажать стрелку вверх, чтобы перезагрузить последний код, и я ничего не получаю…

Ответ №1:

Просто взглянув на предоставленную вами страницу, кажется, что она загружается довольно медленно.

Возможно, это проблема с попыткой синхронно очистить веб-данные, когда вы делаете это асинхронно с функцией обратного вызова, после загрузки страницы.

Возможно, взглянув на страницы mdn в ссылке на событие загрузки:

 <script>
  window.addEventListener("load", function(event) {
    console.log("All resources finished loading!");
  });
  // scrape for your data
</script>
  

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

1. Я предполагал, что могу запустить то, что у вас есть выше, и ожидать текст, но я по-прежнему ничего не получаю из приведенного выше скрипта. Я бы подумал, что если бы данные были на экране, они загружены, но я предполагаю, что страница все еще загружается? Если бы это было так, как я мог запустить элемент get и извлечь данные, а затем через 10 минут просто нажать клавишу up и создать тот же скрипт, и на этот раз ничего?

2. В какой среде вы работаете? Вы просто вводите текст в консоли браузера?

3. Да, Chrome и IE

4. Я несколько раз проводил тест с IE и Chrome. Я также жду, пока страница полностью загрузится. Но в обоих браузерах я получаю сообщение об ошибке. В IE : i.postimg.cc/hG7MN5MF/112.png В Chrome: i.postimg.cc/Gm6xPjRX/113.png не могли бы вы, пожалуйста, проверить опубликованный код, есть ли с ним какие-либо проблемы или нет.