js 实现展示所有国家名、时区的列表
时间: 2024-05-13 12:15:49 浏览: 85
以下是使用 JavaScript 实现展示所有国家名、时区的列表的代码:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>国家与时区列表</title>
</head>
<body>
<h1>国家与时区列表</h1>
<select id="country-list"></select>
<select id="timezone-list"></select>
<script>
// 获取国家列表
const countries = Intl.DateTimeFormat().resolvedOptions().timeZone.split('/');
// 创建国家下拉列表
const countryList = document.getElementById('country-list');
for (let i = 0; i < countries.length; i++) {
const option = document.createElement('option');
option.text = countries[i];
countryList.add(option);
}
// 创建时区下拉列表
function getTimezones(country) {
const timezones = moment.tz.zone(country).abbrs;
const timezoneList = document.getElementById('timezone-list');
timezoneList.innerHTML = '';
for (let i = 0; i < timezones.length; i++) {
const option = document.createElement('option');
option.text = timezones[i];
timezoneList.add(option);
}
}
// 为国家下拉列表添加事件监听器
countryList.addEventListener('change', () => {
const country = countryList.value;
getTimezones(country);
});
// 初始化时区下拉列表
getTimezones(countries[0]);
</script>
</body>
</html>
```
该代码使用了 Moment.js 库来获取时区列表,因此需要先在页面中引入该库。在页面中选择国家后,会刷新时区下拉列表,展示该国家的所有时区缩写。
阅读全文