Skip to content

Commit 7bbb782

Browse files
XhmikosRMaledong
authored andcommitted
Fix IE and minor tweaks (#2392)
1. Make IE support Language switcher. 2. Make js compatable with all kinds of browsers.
1 parent 6d908cb commit 7bbb782

3 files changed

Lines changed: 18 additions & 18 deletions

File tree

layouts/css/_base.styl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ p
5151
img
5252
display block
5353
max-width 100%
54+
border none
5455

5556
.logos &
5657
// Fixes logo size on Firefox, see:

layouts/css/page-modules/_header.styl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ header
2929
position absolute
3030
right 0
3131
bottom 0
32-
height 20%
32+
width 25px
33+
height 25px
3334
fill $light-gray2
3435
cursor pointer
3536
padding 12px
@@ -139,6 +140,5 @@ header
139140
img
140141
display block
141142
margin 0.5em auto 0
142-
border none
143143
max-height 75px
144144
max-width 180px

layouts/partials/header.hbs

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -46,39 +46,38 @@
4646
</div>
4747
</header>
4848
<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')
5353
// Get the current URL language
54-
const currentLang = window.location.pathname.split('/')[1] || "en"
54+
var currentLang = window.location.pathname.split('/')[1] || 'en'
5555
// Get the current URL language selector item as a li
56-
let currentLangElement = null;
56+
var currentLangElement = null;
5757
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))
6363
})
6464
}
6565
else {
6666
currentLangElement = el
6767
}
68-
}
69-
)
68+
})
7069
7170
// 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'));
7473
titleEle.appendChild(textString);
7574
langPickerTogglerElement.appendChild(titleEle);
7675
7776
// Remove the current selected langauge item, because we don't need to choose it
7877
// any more unless we want to switch the new language
7978
languageItemsSelector.removeChild(currentLangElement)
8079
81-
langPickerTogglerElement.addEventListener('click', () => {
80+
langPickerTogglerElement.addEventListener('click', function() {
8281
langPickerElement.classList.toggle('hidden')
8382
})
8483
</script>

0 commit comments

Comments
 (0)