Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 21.01.2020, 12:05
Новичок на форуме
Отправить личное сообщение для vaisan Посмотреть профиль Найти все сообщения от vaisan
 
Регистрация: 06.01.2017
Сообщений: 5

fetch() загрузка и скрытое событие
Имеется такой вопрос: на HTML странице есть элемент div в который загружается с помощью fetch() некий *.html файл с сервера, в котором имеются свои javascript функции по, например, блокировке/показу элементов этого *.html файла. У меня визуальное содержимое этого div меняется в соответствии с *.html файлом, НО почему-то javascript функции не работают, а браузер отладчик не видит ни скрипт, ни новую разметку внутри этого div.
Ответить с цитированием
  #2 (permalink)  
Старый 21.01.2020, 12:32
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

vaisan, вместо долгих описаний лучше всего подходит простенький тестовый пример...
Ответить с цитированием
  #3 (permalink)  
Старый 21.01.2020, 14:48
Новичок на форуме
Отправить личное сообщение для vaisan Посмотреть профиль Найти все сообщения от vaisan
 
Регистрация: 06.01.2017
Сообщений: 5

Ещё не понял как присоединить файлы html
Поэтому zip

Запуск index.html с сервера/localhost
Интересующий скрипт находится в divContent.html
Вложения:
Тип файла: zip New folder.zip (4.2 Кб, 4 просмотров)
Ответить с цитированием
  #4 (permalink)  
Старый 21.01.2020, 15:33
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от vaisan
Ещё не понял как присоединить файлы html
Просто вставляешь их содержимое как текст в сообщение... Потом "обрамляешь" БиБи-кодами
[ HTML ]...[ / HTML ]
Пробелы оставлены для показа...
Ответить с цитированием
  #5 (permalink)  
Старый 21.01.2020, 15:36
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от vaisan
Запуск index.html с сервера/localhost
Я не знаком с bootstrap... Т.ч. для меня это не может быть тестовым примером, извини.

Придется тебе ждать другого человека или делать пример именно с fetch(), чего я собственно и ждал...
Ответить с цитированием
  #6 (permalink)  
Старый 21.01.2020, 15:39
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

vaisan, это собственно твое встраивание html "со скриптами"?
Сообщение от vaisan
function XHR(filename) {
            var url = filename;
            fetch(url).then(function (response) {//response.json()
                response.text().then(function (text) {
                    document.getElementById("divSource").innerHTML = text;
                });
            });
        };
Ответить с цитированием
  #7 (permalink)  
Старый 21.01.2020, 15:48
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

Сообщение от vaisan
почему-то javascript функции не работают
https://javascript.ru/forum/misc/791...utri-nego.html
Ответить с цитированием
  #8 (permalink)  
Старый 21.01.2020, 15:48
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

vaisan,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
Ответить с цитированием
  #9 (permalink)  
Старый 21.01.2020, 15:50
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

vaisan, весь твой пример можно свести к этому
<div id='test'></div>
<script type='text/javascript'>
var txt='<script>alert("Ok")<\/script>';
txt+='<p>Test<\/p>';
document.getElementById('test').innerHTML = txt;
</script>

Так действительно скрипты не отработают...

Нужно создавать элемент script... Добавлять его соответствующим методом на страницу...
Тогда скрипты будут работать.
var o=document.createElement('script');
o.text = 'alert("Ok");';
document.getElementsByTagName('head')[0].appendChild(o);
Ответить с цитированием
  #10 (permalink)  
Старый 21.01.2020, 16:15
Профессор
Отправить личное сообщение для Manyasha Посмотреть профиль Найти все сообщения от Manyasha
 
Регистрация: 21.09.2015
Сообщений: 196

ksa, рони,

подскажите, пожалуйста, а чем плох тег object?
Почему бы не сделать так:
function XHR(filename) {
	var url = filename;
	document.getElementById("divSource").setAttribute("data", filename);
	/*fetch(url).then(function (response) {//response.json()
		response.text().then(function (text) {
			document.getElementById("divSource").innerHTML = text;
		});
	});*/
};


<object id="divSource" style="margin: 20px 20px 10px 20px; height: 480px; width: 75%; overflow-y: auto;" type="text/html"></object>
<!--div id="divSource" style="margin: 20px 20px 10px 20px; height: 480px; width: 75%; overflow-y: auto;"></div-->


vaisan,
попробуйте так, если есть возможность заменить div на object
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
клик и событие работает клик и это событие не работает Trues Элементы интерфейса 3 27.05.2015 09:28
Nodejs, busboy, загрузка нескольких файлов, не корректно вызывается событие 'finish' master_alf AJAX и COMET 1 07.10.2014 11:08
Событие click Гробовщик jQuery 1 31.07.2013 07:28
Как правильно подавить событие при подключении своего обработчика? Маэстро Firefox/Mozilla 2 03.09.2011 11:46
Обращение к стилю(Спойлер) Кирюха =) Элементы интерфейса 3 29.07.2011 14:50