Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Как можно сократить код? (https://javascript.ru/forum/events/35335-kak-mozhno-sokratit-kod.html)

allanmiln 07.02.2013 19:32

Как можно сократить код?
 
Здравствуйте!
Я использую такой вот простой код для модальных окон:

function ShowWindow1(){
var div = document.getElementById("Window1");
if (!div)
return;
div.style.display = "block";
document.body.appendChild(div);
return false;}

function CloseWindow1(){
var div = document.getElementById("Window1");
if (!div)
return;
div.style.display = "none";
return false;}


Таких окон аж 6 штук. И для каждого окна я дублирую этот скрипт, меняю id и всё хорошо. Вот только хотелось бы сократить код.
Возможно ли это?
Заранее благодарен.

Deff 07.02.2013 19:39

<!DOCTYPE HTML>
<html>
  <head>
<style>
div[id^="Window"]{
  margin:12px;
  width:200px;
  height:100px;
  border:red solid 2px;
}
</style>

<script>
var N=0;

function ShowWindow(N){
var div = document.getElementById("Window"+N);
if (div) return false;
var div = document.createElement('div')
div.id = "Window"+N;
div.innerHTML=N;
document.body.appendChild(div);
return true;
}

function CloseWindow(N){
var div = document.getElementById("Window"+N);
if (!div) return false;
div.parentNode.removeChild(div)
return true;
}
</script>

 </head>
  <body>


<input type="button" onclick="ShowWindow(N);N++" value="Cоздать"/>&nbsp; &nbsp;
<input id="txt" placeholder="Введите номер" size=12/>
<input type="button" onclick="X=document.getElementById('txt').value;CloseWindow(X)" value="Удалить"/>
<br><br>


  </body>
</html>

allanmiln 08.02.2013 12:41

Спасибо большое! Всё получилось :)


Часовой пояс GMT +3, время: 18:27.