MediaWiki:Common.js : Différence entre versions
m (Révocation des modifications de Dexter (discussion) vers la dernière version de Olthir) (Balise : Révocation) |
|||
Ligne 1 : | Ligne 1 : | ||
/* Tout JavaScript ici sera chargé avec chaque page accédée par n’importe quel utilisateur. */ | /* Tout JavaScript ici sera chargé avec chaque page accédée par n’importe quel utilisateur. */ | ||
− | |||
− | + | /* Slideshow pour faire défiler les images, c'est du JS pompé sur le wiki italien */ | |
+ | (function() { | ||
− | / | + | init(); //on page load - show first slide, hidethe rest |
− | function | + | function init() { |
− | + | parents = document.getElementsByClassName('slideshow-container'); | |
− | |||
− | |||
− | |||
− | |||
− | + | for (j = 0; j < parents.length; j++) { | |
− | + | var slides = parents[j].getElementsByClassName("mySlides"); | |
− | + | var dots = parents[j].getElementsByClassName("dot"); | |
− | + | slides[0].classList.add('active-slide'); | |
− | + | dots[0].classList.add('active'); | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
} | } | ||
− | |||
− | + | dots = document.getElementsByClassName('dot'); //dots functionality | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | for (i = 0; i < dots.length; i++) { | |
− | function | + | dots[i].onclick = function() { |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | slides = this.parentNode.parentNode.getElementsByClassName("mySlides"); | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | for (j = 0; j < this.parentNode.children.length; j++) { | |
− | + | this.parentNode.children[j].classList.remove('active'); | |
− | + | slides[j].classList.remove('active-slide'); | |
− | + | if (this.parentNode.children[j] == this) { | |
− | + | index = j; | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
} | } | ||
− | + | this.classList.add('active'); | |
− | + | slides[index].classList.add('active-slide'); | |
− | + | ||
− | |||
− | |||
− | |||
} | } | ||
} | } | ||
− | + | //prev/next functionality | |
+ | links = document.querySelectorAll('.slideshow-container a'); | ||
− | + | for (i = 0; i < links.length; i++) { | |
− | + | links[i].onclick = function() { | |
− | + | current = this.parentNode; | |
− | + | ||
− | + | var slides = current.getElementsByClassName("mySlides"); | |
− | + | var dots = current.getElementsByClassName("dot"); | |
− | + | curr_slide = current.getElementsByClassName('active-slide')[0]; | |
− | + | curr_dot = current.getElementsByClassName('active')[0]; | |
− | + | curr_slide.classList.remove('active-slide'); | |
− | + | curr_dot.classList.remove('active'); | |
− | + | if (this.className == 'next') { | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | if (curr_slide.nextElementSibling.classList.contains('mySlides')) { | |
+ | curr_slide.nextElementSibling.classList.add('active-slide'); | ||
+ | curr_dot.nextElementSibling.classList.add('active'); | ||
+ | } else { | ||
+ | slides[0].classList.add('active-slide'); | ||
+ | dots[0].classList.add('active'); | ||
+ | } | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
− | |||
− | |||
− | |||
− | + | if (this.className == 'prev') { | |
− | + | if (curr_slide.previousElementSibling) { | |
− | + | curr_slide.previousElementSibling.classList.add('active-slide'); | |
− | + | curr_dot.previousElementSibling.classList.add('active'); | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} else { | } else { | ||
− | + | slides[slides.length - 1].classList.add('active-slide'); | |
+ | dots[slides.length - 1].classList.add('active'); | ||
} | } | ||
− | + | ||
} | } | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
− | } | + | })(); |
− | |||
− | |||
− | |||
− | |||
− | + | // Modal windows in javascript | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | $(".trigger").on("click", function() { | |
− | + | var modal = $(this).data("modal"); | |
− | + | $(modal).toggle(); | |
− | + | }); | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | $(".modal").on("click", function(e) { | |
− | + | var className = e.target.className; | |
− | + | if(className === "modal" || className === "close-button"){ | |
− | + | $(this).closest(".modal").toggle(); | |
− | + | } | |
− | + | }); | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | } | ||
/* Pour les cookies */ | /* Pour les cookies */ |
Version du 4 mai 2022 à 22:55
/* Tout JavaScript ici sera chargé avec chaque page accédée par n’importe quel utilisateur. */
/* Slideshow pour faire défiler les images, c'est du JS pompé sur le wiki italien */
(function() {
init(); //on page load - show first slide, hidethe rest
function init() {
parents = document.getElementsByClassName('slideshow-container');
for (j = 0; j < parents.length; j++) {
var slides = parents[j].getElementsByClassName("mySlides");
var dots = parents[j].getElementsByClassName("dot");
slides[0].classList.add('active-slide');
dots[0].classList.add('active');
}
}
dots = document.getElementsByClassName('dot'); //dots functionality
for (i = 0; i < dots.length; i++) {
dots[i].onclick = function() {
slides = this.parentNode.parentNode.getElementsByClassName("mySlides");
for (j = 0; j < this.parentNode.children.length; j++) {
this.parentNode.children[j].classList.remove('active');
slides[j].classList.remove('active-slide');
if (this.parentNode.children[j] == this) {
index = j;
}
}
this.classList.add('active');
slides[index].classList.add('active-slide');
}
}
//prev/next functionality
links = document.querySelectorAll('.slideshow-container a');
for (i = 0; i < links.length; i++) {
links[i].onclick = function() {
current = this.parentNode;
var slides = current.getElementsByClassName("mySlides");
var dots = current.getElementsByClassName("dot");
curr_slide = current.getElementsByClassName('active-slide')[0];
curr_dot = current.getElementsByClassName('active')[0];
curr_slide.classList.remove('active-slide');
curr_dot.classList.remove('active');
if (this.className == 'next') {
if (curr_slide.nextElementSibling.classList.contains('mySlides')) {
curr_slide.nextElementSibling.classList.add('active-slide');
curr_dot.nextElementSibling.classList.add('active');
} else {
slides[0].classList.add('active-slide');
dots[0].classList.add('active');
}
}
if (this.className == 'prev') {
if (curr_slide.previousElementSibling) {
curr_slide.previousElementSibling.classList.add('active-slide');
curr_dot.previousElementSibling.classList.add('active');
} else {
slides[slides.length - 1].classList.add('active-slide');
dots[slides.length - 1].classList.add('active');
}
}
}
}
})();
// Modal windows in javascript
$(".trigger").on("click", function() {
var modal = $(this).data("modal");
$(modal).toggle();
});
$(".modal").on("click", function(e) {
var className = e.target.className;
if(className === "modal" || className === "close-button"){
$(this).closest(".modal").toggle();
}
});
/* Pour les cookies */
(function () {
var req = new XMLHttpRequest();
req.addEventListener('load', function (ev) {
if (this.status >= 200 && this.status < 300) {
var data = JSON.parse(this.responseText);
if (data.hasOwnProperty('version')) {
var gdpr = document.createElement("script");
gdpr.src = "https://s3-static.geo.gfsrv.net/cookiebanner/" + data.version + "/cookie.min.js";
document.head.appendChild(gdpr);
}
}
});
req.open('GET', "https://s3-static.geo.gfsrv.net/cookiebanner/version.json");
req.send();
})();