jquery - 从选择选项到 href 标记的语言选择器
问题描述
我有一个与 select - 选项配合得很好的语言选择器。但是,我想将其更改为 a/li 标签。这能行吗?本地存储也被用于其中,以获取用户选项。
$('[lang="fr"]').hide();
$('[lang="sp"]').hide();
let savedLang = "en"
//let savedLang = localStorage.getItem('lang')
if (savedLang) {
let element = document.querySelector(`option[value='${savedLang}']`);
element.selected = true
selectText(savedLang);
}
$('#lang-switch').change(function() {
var lang = $(this).val();
//Local storage wont work at Stack Overflow
//localStorage.setItem('lang', lang);
selectText(lang);
})
function selectText(lang) {
switch (lang) {
case 'en':
$('[lang]').hide();
$('[lang="en"]').show();
break;
case 'fr':
$('[lang]').hide();
$('[lang="fr"]').show();
break;
case 'sp':
$('[lang]').hide();
$('[lang="sp"]').show();
break;
default:
$('[lang]').hide();
$('[lang="en"]').show();
}
}
[lang="fr"],
[lang="sp"] {
display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p>Change language</p>
<select id="lang-switch">
<option value="en">English</option>
<option value="fr">French</option>
<option value="sp">Spanish</option>
</select>
<p lang="en">Hello!</p>
<p lang="fr">Bojour!</p>
<p lang="sp">Hola!</p>
解决方案
推荐阅读
- laravel - Laravel + Vue Js中输入字段为空时如何清除自动完成结果?
- node.js - momentjs 验证功能无法正常工作
- spring-boot - @ManyToMany 休眠映射的问题
- javascript - 在 WordPress 中添加自定义 JavaScript 文件
- node.js - 在nodejs中并行处理多个文件
- emacs - Emacs - 我应该如何自定义函数行为?
- ios - 在 iOS 中通过 SSL 流式传输 RTSP (RTSPS)
- azure - 如何根据发出请求的用户定义 Logic-App 响应
- javascript - 从角度2 +反应形式的输入字段中删除连字符
- sql - 如何在 bigquery 中选择不同的值(多个值)?