@igoodmood

Как решить ошибку такого рода на JS?

Здравствуйте, дорогие товарищи!
Начал изучать JS и возникла одна проблема, нужно чтобы при загрузке страницы появлялось всплывающие уведомление (prompt) я делаю вызов данной функции в теле body используя onload. Но при такой ситуации у меня не отображается контент на странице. Когда убираю onload все появляется, только всплывающего окна нет. Пробовал искать решение подобной проблемы в интернете, но, увы, ничего не нашёл. Поэтому прошу Вашей помощи. Код прилагается ниже.
<html>
<head>
<meta charset="utf-8">
<title>_11_</title>
</head>
<body bgcolor="#20B2AA" text="#FFD700" onLoad="javascript:InName();">
<button onclick="window.open('file://JS/l11_2.html','Факториал','top=15, left=20, width=400, height=300')">Факториал</button>
</body>
<script>

	function InName() {
	var name=prompt("Ваше имя?");
	if (name != "" && name != null) document.body.innerHTML="<p onClick=\"NextName()\">Здравствуйте, "+name+"!</p>";
	else document.body.innerHTML="<p onClick=\"NextName()\">Здравствуйте! Было бы приятно с Вами познакомиться! </p>";
	}

	function NextName() {
	if (confirm("Вы хотите изменить имя пользователя? ")) InName();
	}

</script>
</html>
  • Вопрос задан
  • 150 просмотров
Решения вопроса 1
SkiperX
@SkiperX Куратор тега HTML
document.body.innerHTML = document.body.innerHTML + "Ваша строчка"
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@4604590
JavaScript, HTML/CSS, PHP,MySQL, SuiteCRM/SugarCRM
вы заменяете содержимое body.
создавайте дополнительный элемент или дополняйте содержимое body.
и скрипт должен работать после полной загрузки страницы
<html>
<head>
<meta charset="utf-8">
<title>_11_</title>
</head>
<body bgcolor="#20B2AA" text="#FFD700">
<button onclick="window.open('file://JS/l11_2.html','Факториал','top=15, left=20, width=400, height=300')">Факториал</button>
</body>
<script src="https://js.cx/script/jquery.documentReady.js"></script>
<script>
function InName() {
  var name=prompt("Ваше имя?");
  if (name != "" && name != null) document.body.innerHTML+="<p onClick=\"NextName()\">Здравствуйте, "+name+"!</p>";
  else document.body.innerHTML +="<p onClick=\"NextName()\">Здравствуйте! Было бы приятно с Вами познакомиться! </p>";
  }

  function NextName() {
  if (confirm("Вы хотите изменить имя пользователя? ")) InName();
  }


	$(function() {InName();});
</script>
</html>
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы