Advertisement
Guest User

Untitled

a guest
Feb 8th, 2016
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.04 KB | None | 0 0
  1. // JavaScript
  2.  
  3. // Globala variabler
  4. var linkListElem; // Referens till div-elementet för länkarna
  5. var courseListElem; // Referens till div-element där valda kurser ska läggas.
  6. var check = 0;
  7.  
  8. // Initiering av globala variabler och händelsehanterare.
  9. function init() {
  10. var i; // Loopvariabel
  11. var courseElems; // Array med referenser till alla li-element i den andra section
  12. linkListElem = document.getElementById("linkList");
  13. courseListElem = document.getElementById("courseList");
  14. addListener(document.getElementById("linkBtn"),"click",listLinks);
  15. courseElems = document.querySelectorAll("main section:nth-of-type(2) div:first-of-type li");
  16. for (i=0; i<courseElems.length; i++) {
  17. addListener(courseElems[i],"click",addCourse);
  18. courseElems[i].style.cursor = "pointer";
  19. }
  20.  
  21. addListener(document.getElementById("teacherBtn"),"click",addTeachers); // Användsi extramerit
  22. } // End init
  23. addListener(window,"load",init); // Se till att init aktiveras då sidan är inladdad
  24.  
  25.  
  26. // Kopiera alla länkar ur huvudtexten och lägg upp dem i en lista.
  27. function listLinks() {
  28. var links;
  29. var clonedElem;
  30. var newElem;
  31.  
  32. links = document.querySelectorAll("main section:nth-of-type(1) div:first-of-type a ");
  33.  
  34. for (var i=0; i<links.length; i++){
  35. clonedElem = links[i].cloneNode(true);
  36. newElem = document.createElement("p");
  37. newElem.appendChild(clonedElem);
  38. linkListElem.appendChild(newElem);
  39. clonedElem.setAttribute("target","_blank");
  40. }
  41. } // End listLinks
  42.  
  43.  
  44. // Den kurs användaren klickat på, läggs in överst i kurslistan.
  45. function addCourse() {
  46. var clickedElem; //kursen man klickar på
  47. var selectedCourse; //texten från clickedElem sparas här
  48. var newElem2; //nytt P-element
  49. var firstPelem; //Första P-elementet i den högra listan (courseListElem)
  50.  
  51. clickedElem = this.innerHTML;
  52. selectedCourse = document.createTextNode(clickedElem);
  53. newElem2 = document.createElement("p");
  54. newElem2.appendChild(selectedCourse);
  55.  
  56. if(this.value > 0) return;
  57. check++;
  58.  
  59. firstPelem = document.querySelector("#courseList p");
  60. courseListElem.insertBefore(newElem2 , firstPelem);
  61. addListener(newElem2,"click",removeCourse);
  62. newElem2.style.cursor = "pointer";
  63.  
  64. this.value=check;
  65.  
  66.  
  67. } // End addCourse
  68.  
  69.  
  70. // Den kurs användaren klickat på i kurslistan, tas bort.
  71. function removeCourse() {
  72.  
  73. var listCheck;
  74.  
  75. courseListElem.removeChild(this);
  76.  
  77. listCheck = document.querySelectorAll("main section:nth-of-type(2) div:first-of-type li");
  78.  
  79. for (i=0; i<listCheck.length; i++)
  80. {
  81. if (listCheck[i].value = this.value)
  82. {
  83. listCheck[i].value = 0;
  84. }
  85. }
  86.  
  87.  
  88. } // End removeCourse
  89.  
  90.  
  91. // ----- Extramerit -----
  92. // Funktion som lägger till kursansvariglärare i kurslistan
  93. function addTeachers() {
  94. var teachers = ["Rune Körnefors","David Johansson","Karl Lohan Rosqvist"];
  95. var teacherLinks = ["http://lnu.se/personal/rune.kornefors","http://lnu.se/personal/david.johansson","http://lnu.se/personal/karl.johan.rosqvist"];
  96.  
  97. } // End addTeachers
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement