Guest User

kod.js

a guest
Dec 31st, 2015
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*-----------------------------------------------------------*\
  2.  
  3.   NOTE: całość skryptu ładuje pliki tekstowe o następującej
  4.   strukturze:
  5.     work_N.text - kontener na właściwy tekst;
  6.     work_N.desc - kontener na krótki opis tekstu;
  7.     work_N.title - konteren na tytuł tekstu
  8.  
  9. \*-----------------------------------------------------------*/
  10.  
  11.  
  12. // funkcja, która sprawdza, czy zestaw plików o danej wartości istnieje
  13. function isPresent(WhichOne) {
  14.   var result = true;
  15.   try {
  16.     var xmlhttp = new XMLHttpRequest();
  17.     xmlhttp.open("HEAD", "internal/txts/work_" + WhichOne + ".text", true);
  18.     xmlhttp.send();
  19.   }
  20.   catch (err) {
  21.     result = false;
  22.   }
  23.   return result;
  24. }
  25.  
  26. // funkcja ładująca zawartość odpowiedniego pliku tekstowego do przeznaczonego mu kontenera div
  27. function getText(DivId, WhichOne, What) {
  28.   var xmlhttp = new XMLHttpRequest();
  29.   xmlhttp.onreadystatechange = function() {
  30.     if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { document.getElementById(DivId).innerHTML = xmlhttp.responseText; }
  31.   };
  32.   xmlhttp.open("GET", "internal/txts/work_" + WhichOne + What, true);
  33.   xmlhttp.send();
  34.   return xmlhttp.responseText;
  35. }
  36.  
  37. // funkcja tworząca kontenery na załadowany tekst
  38. function createDiv(What, WhichOne) {
  39.   var newDiv = document.createElement("div");
  40.   newDiv.id = What + WhichOne;
  41.   if (What == "title_") {
  42.     newDiv.addEventListener("mouseover", function () { PointerOn(WhichOne) }, false);
  43.     newDiv.addEventListener("mouseout", function () { PointerOut(WhichOne) }, false);
  44.     newDiv.addEventListener("click", function () {  ChangetoWork(WhichOne) }, false);
  45.   }
  46.   document.getElementById("works-container").appendChild(newDiv);
  47. }
  48.  
  49. // funkcja wyświetlająca listę plików na ekranie powitalnym. to ona jest problemem na Chromium - wykonuje się w nieskończoność, zupełnie, jakby isPresent(i) cały czas zwracało warość true, a tak nie jest.
  50. function printWorks() {
  51.   for (var i = 1; doContinue; ++i) {
  52.     if (isPresent(i)) {
  53.       createDiv("title_", i);
  54.       getText("title_" + i, i, ".title");
  55.       createDiv ("description_", i);
  56.       getText("description_" + i, i, ".desc");
  57.     } else { doContinue = false; }
  58.   }
  59. }
Advertisement
Add Comment
Please, Sign In to add comment