Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 04.01.2023, 22:57
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

можно убрать строки html = readTextFile('admin/text/menu/1.txt'); и записать readTextFile('admin/text/menu/1.txt'); в html записывается строки файла чтобы передать в функцию: function readTextFile(file), в которой уже извлекаются строки
Ответить с цитированием
  #12 (permalink)  
Старый 04.01.2023, 22:57
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

правильно?
Ответить с цитированием
  #13 (permalink)  
Старый 04.01.2023, 22:59
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

html = путь файла
Ответить с цитированием
  #14 (permalink)  
Старый 04.01.2023, 23:03
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

не путь, а все что в нутри ini (файла)
Ответить с цитированием
  #15 (permalink)  
Старый 04.01.2023, 23:07
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

уже урезал до минимума
echo "
<div id=\"imgtext1\">$new1[text1]</div>
<div id=\"imgtext2\">$new1[text2]</div>
<div id=\"imgtext3\">$new1[text3]</div>";
echo "
<a id=\"a1ru\" href=\"111\">111</a><br>
<a id=\"a2ru\" href=\"222\">222</a><br>
<a id=\"a3ru\" href=\"333\">333</a><br>
<a id=\"a4ru\" href=\"444\">444</a><br>
<a id=\"a5ru\" href=\"555\">555</a><br>
";

echo "
<div id=\"imgtext4\">$new6[text4]</div>
<div id=\"imgtext5\">$new6[text5]</div>
<div id=\"imgtext6\">$new6[text6]</div>";
echo "
<a id=\"cont1ru\" href=\"111\">111</a><br>
<a id=\"cont2ru\" href=\"222\">222</a><br>
<a id=\"cont3ru\" href=\"333\">333</a><br>
<a id=\"cont4ru\" href=\"444\">444</a><br>
<a id=\"cont5ru\" href=\"555\">555</a><br>
";
Ответить с цитированием
  #16 (permalink)  
Старый 05.01.2023, 00:07
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

в строках:
document.getElementById("imgtext1").innerHTML=txt.get("text1").slice(1,-2);
				document.getElementById("imgtext2").innerHTML=txt.get("text2").slice(1,-2);
				document.getElementById("imgtext3").innerHTML=txt.get("text3").slice(1,-2);

если в ini есть text1,text2,text3 то буде читать строки. но если порядок поставит другой text1,text6,text3 то остановится на text6
Ответить с цитированием
  #17 (permalink)  
Старый 05.01.2023, 00:21
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

готово сделано
в общем я не уверен что такое правильное
НО работает: сделал readTextFile(file) и readTextFile2(file)
и передал так: readTextFile(html); readTextFile2(html);
function readTextFile(file)
{
	var rawFile = new XMLHttpRequest();
	rawFile.open("GET", file, false);
	rawFile.onreadystatechange = function ()
	{
		if(rawFile.readyState === 4)
		{
			if(rawFile.status === 200 || rawFile.status == 0)
			{
				var allText = rawFile.responseText;
				let txt = allText;
				txt = txt.split(/\n/).map(str => str.split("="));
				txt = new Map(txt);
				
				document.getElementById("imgtext1").innerHTML=txt.get("text1").slice(1,-2);
				document.getElementById("imgtext2").innerHTML=txt.get("text2").slice(1,-2);
				document.getElementById("imgtext3").innerHTML=txt.get("text3").slice(1,-2);
				}
			}
		}
			rawFile.send(null);
};
function readTextFile2(file)
{
	var rawFile = new XMLHttpRequest();
	rawFile.open("GET", file, false);
	rawFile.onreadystatechange = function ()
	{
		if(rawFile.readyState === 4)
		{
			if(rawFile.status === 200 || rawFile.status == 0)
			{
				var allText = rawFile.responseText;
				let txt = allText;
				txt = txt.split(/\n/).map(str => str.split("="));
				txt = new Map(txt);
				
				document.getElementById("imgtext4").innerHTML=txt.get("text4").slice(1,-2);
				document.getElementById("imgtext5").innerHTML=txt.get("text5").slice(1,-2);
				document.getElementById("imgtext6").innerHTML=txt.get("text6").slice(1,-2);
				}
			}
		}
			rawFile.send(null);
};
window.addEventListener('DOMContentLoaded', function()
		{			  
document.onmouseover = function(e){
	if(e.target.tagName == 'A'){
		if(e.target.id == 'a1ru'){
			html = readTextFile('admin/text/menu/1.txt');
			}
		if(e.target.id == 'a2ru'){
			html = readTextFile('admin/text/menu/2.txt');
			}
		if(e.target.id == 'a3ru'){
			html = readTextFile('admin/text/menu/3.txt');
			}
		if(e.target.id == 'a4ru'){
			html = readTextFile('admin/text/menu/4.txt');
			}
		if(e.target.id == 'a5ru'){
			html = readTextFile('admin/text/menu/5.txt');
			}
			
		if(e.target.id == 'a6ru'){
			html = readTextFile2('admin/text/menu/1ru.txt');
			}
		if(e.target.id == 'a7ru'){
			html = readTextFile2('admin/text/menu/2ru.txt');
			}
		if(e.target.id == 'a8ru'){
			html = readTextFile2('admin/text/menu/3ru.txt');
			}
		if(e.target.id == 'a9ru'){
			html = readTextFile2('admin/text/menu/4ru.txt');
			}
		if(e.target.id == 'a10ru'){
			html = readTextFile2('admin/text/menu/5ru.txt');
			}



			
}
}	  
readTextFile(html);readTextFile2(html);
}
);
function changeImage(src)
{
document.getElementById('imgout').src = src;
}
Ответить с цитированием
  #18 (permalink)  
Старый 05.01.2023, 00:22
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

window.addEventListener('DOMContentLoaded', function()
за такое же ни кто не укусит?
Ответить с цитированием
  #19 (permalink)  
Старый 07.01.2023, 08:09
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

не напрягать код процессора
Доброе! тут такое дело: так можно? и как мне это правильно сделать?
}
}	  
if html 
{
readTextFile(html);
}
elseif
{
readTextFile2(html2);
}
}
);
мой уровень это alert ('LifeScript');
пр: я до сих пор не могу понять для чего строка if(e.target.tagName == 'A') а в B или P значит нельзя
ПРИМЕР ДВУХ ОКН (ТАБЛИЦ)
ссылка на форум 4я в низу.
НО, я понимаю, что
readTextFile(html);
readTextFile2(html2);

при наведение на ссылку скрипт полностью все перепроверяет.
по этому: как можно сделать хотя бы через IF может html >0 или html = ture;
Ответить с цитированием
  #20 (permalink)  
Старый 07.01.2023, 11:10
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,743

строкой if html вы что пытаетесь проверить?

В js нет оператора elseif

Происходит событие. информация о нем в e.
e.target - самый внутренний элемент, на котором произошло событие. (т.к. обрабатываться оно может не на нем, а на каком то из его родительских)
e.target.tagName == 'A' проверяет, что этим внутренним элементом является именно <a>

Что такое html? Что вы в него пытаетесь записать? У вас функции readTextFile и readTextFile2 ничего не возвращают. Да и не могут вернуть, т.к. они по сути асинхронны.
Вам надо подучить js и потом поучить асинхронное програvмирование на js. Всякие Promise, async/await.
Ответить с цитированием
Ответ



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

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