-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.js
123 lines (101 loc) · 3.67 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
filterSelection("all")
function filterSelection(c) {
var x, i;
x = document.getElementsByClassName("column");
if (c == "all") c = "";
for (i = 0; i < x.length; i++) {
w3RemoveClass(x[i], "show");
if (x[i].className.indexOf(c) > -1) w3AddClass(x[i], "show");
}
}
function w3AddClass(element, name) {
var i, arr1, arr2;
arr1 = element.className.split(" ");
arr2 = name.split(" ");
for (i = 0; i < arr2.length; i++) {
if (arr1.indexOf(arr2[i]) == -1) {element.className += " " + arr2[i];}
}
}
function w3RemoveClass(element, name) {
var i, arr1, arr2;
arr1 = element.className.split(" ");
arr2 = name.split(" ");
for (i = 0; i < arr2.length; i++) {
while (arr1.indexOf(arr2[i]) > -1) {
arr1.splice(arr1.indexOf(arr2[i]), 1);
}
}
element.className = arr1.join(" ");
}
// Add active class to the current button (highlight it)
var btnContainer = document.getElementById("myBtnContainer");
var btns = btnContainer.getElementsByClassName("btn");
for (var i = 0; i < btns.length; i++) {
btns[i].addEventListener("click", function(){
var current = document.getElementsByClassName("active");
current[0].className = current[0].className.replace(" active", "");
this.className += " active";
});
}
function myFunction() {
const input = document.getElementById('myInput');
const filter = input.value.toUpperCase();
const ul = document.getElementById("myUL");
const li = ul.getElementsByTagName('li');
for (let i = 0; i < li.length; i++) {
const a = li[i].getElementsByTagName("a")[0];
const txtValue = a.textContent || a.innerText;
if (txtValue.toUpperCase().indexOf(filter) > -1) {
li[i].style.display = "";
} else {
li[i].style.display = "none";
}
}
}
document.addEventListener('DOMContentLoaded', () => {
const toggleButton = document.getElementById('toggle-button');
const body = document.body;
toggleButton.addEventListener('click', () => {
body.classList.toggle('light-mode');
body.classList.toggle('dark-mode');
});
// Set initial mode based on user's preference
if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
body.classList.add('dark-mode');
} else {
body.classList.add('light-mode');
}
});
// Load the Google Translate API script
function loadGoogleTranslate() {
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'https://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit';
document.body.appendChild(script);
}
// Initialize the Google Translate element
function googleTranslateElementInit() {
new google.translate.TranslateElement({
pageLanguage: 'en',
includedLanguages: 'es,fr',
layout: google.translate.TranslateElement.InlineLayout.SIMPLE
}, 'google_translate_element');
}
// Add event listener to the button
document.getElementById('translateButton').addEventListener('click', function() {
loadGoogleTranslate();
document.getElementById('google_translate_element').style.display = 'block';
});
function myFunction() {
var element = document.body;
element.classList.toggle("dark-mode");
}
window.addEventListener('offline', function() {
document.getElementById('offline-popup').style.display = 'block';
});
window.addEventListener('online', function() {
document.getElementById('offline-popup').style.display = 'none';
});
function closePopup() {
document.getElementById('offline-popup').style.display = 'none';
}