|
46 | 46 | </div> |
47 | 47 | </header> |
48 | 48 | <script> |
49 | | - const langPickerElement = document.querySelector('.lang-picker') |
50 | | - const langElements = langPickerElement.querySelectorAll('li') |
51 | | - const langPickerTogglerElement = document.querySelector('#lang-picker-toggler') |
52 | | - const languageItemsSelector = document.querySelector('#language-items') |
| 49 | + var langPickerElement = document.querySelector('.lang-picker') |
| 50 | + var langElements = langPickerElement.querySelectorAll('li') |
| 51 | + var langPickerTogglerElement = document.querySelector('#lang-picker-toggler') |
| 52 | + var languageItemsSelector = document.querySelector('#language-items') |
53 | 53 | // Get the current URL language |
54 | | - const currentLang = window.location.pathname.split('/')[1] || "en" |
| 54 | + var currentLang = window.location.pathname.split('/')[1] || 'en' |
55 | 55 | // Get the current URL language selector item as a li |
56 | | - let currentLangElement = null; |
| 56 | + var currentLangElement = null; |
57 | 57 |
|
58 | | - langElements.forEach(el => { |
59 | | - if (el.getAttribute("data-lang") !== currentLang) { |
60 | | - el.addEventListener('click', (e) => { |
61 | | - const newLocale = (e.target && e.target.dataset && e.target.dataset.lang) || "en"; |
62 | | - window.location.replace(window.location.pathname.replace(/\/[a-zA-Z-]+/, `/${newLocale}`)) |
| 58 | + Array.prototype.forEach.call(langElements, function(el) { |
| 59 | + if (el.getAttribute('data-lang') !== currentLang) { |
| 60 | + el.addEventListener('click', function(e) { |
| 61 | + var newLocale = (e.target && e.target.dataset && e.target.dataset.lang) || 'en'; |
| 62 | + window.location.replace(window.location.pathname.replace(/\/[a-zA-Z-]+/, '/' + newLocale)) |
63 | 63 | }) |
64 | 64 | } |
65 | 65 | else { |
66 | 66 | currentLangElement = el |
67 | 67 | } |
68 | | - } |
69 | | - ) |
| 68 | + }) |
70 | 69 |
|
71 | 70 | // Create dynamically label for tooltip |
72 | | - let titleEle = document.createElementNS("http://www.w3.org/2000/svg", "title"); |
73 | | - let textString = document.createTextNode(currentLangElement.getAttribute("language")); |
| 71 | + var titleEle = document.createElementNS('http://www.w3.org/2000/svg', 'title'); |
| 72 | + var textString = document.createTextNode(currentLangElement.getAttribute('language')); |
74 | 73 | titleEle.appendChild(textString); |
75 | 74 | langPickerTogglerElement.appendChild(titleEle); |
76 | 75 |
|
77 | 76 | // Remove the current selected langauge item, because we don't need to choose it |
78 | 77 | // any more unless we want to switch the new language |
79 | 78 | languageItemsSelector.removeChild(currentLangElement) |
80 | 79 |
|
81 | | - langPickerTogglerElement.addEventListener('click', () => { |
| 80 | + langPickerTogglerElement.addEventListener('click', function() { |
82 | 81 | langPickerElement.classList.toggle('hidden') |
83 | 82 | }) |
84 | 83 | </script> |
0 commit comments