实现带有介绍的Select列表菜单需要用到HTML、CSS和JavaScript技术。
实现带有介绍的Select列表菜单需要用到HTML、CSS和JavaScript技术。
HTML结构
首先,在HTML文件中创建一个Select元素以及对应的option选项,如下所示:
<label for="menu">请选择菜单:</label>
<select id="menu">
<option value="0">请选择一个选项</option>
<option value="1">菜单1</option>
<option value="2">菜单2</option>
<option value="3">菜单3</option>
</select>
<div id="menuIntro"></div>
这里的Select元素包含四个选项,其中value属性为每个选项设置了一个唯一的值,方便后面JavaScript代码的处理。
CSS样式
让页面更加美观,需要对Select元素和选项进行CSS样式的设置,比如美化Select的样式、设置选中选项的样式等。
select {
height: 40px;
width: 250px;
border: none;
background-color: #f2f2f2;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding: 10px;
font-size: 16px;
font-weight: bold;
color: #333;
}
option {
background-color: #f2f2f2;
color: #333;
font-size: 14px;
}
option:checked {
background-color: #dcdcdc;
color: #fff;
font-weight: bold;
}
JavaScript代码
最后,使用JavaScript代码实现当用户选择一个选项时,菜单的描述信息动态更新。
- 获取Select元素和描述信息的HTML节点:
const menu = document.querySelector('#menu');
const menuIntro = document.querySelector('#menuIntro');
- 添加监听事件,当用户选择了一个选项,会触发该事件:
menu.addEventListener('change', updateMenuIntro);
- 编写updateMenuIntro函数,根据用户选择的选项更新描述信息的内容:
function updateMenuIntro() {
const selectedOption = menu.options[menu.selectedIndex];
const selectedValue = selectedOption.value;
let intro = '';
switch (selectedValue) {
case '0':
intro = '请点击选择一个菜单';
break;
case '1':
intro = '菜单1:内容1的介绍';
break;
case '2':
intro = '菜单2:内容2的介绍';
break;
case '3':
intro = '菜单3:内容3的介绍';
break;
}
menuIntro.textContent = intro;
}
通过这些JavaScript代码,实现了Select菜单和对应的介绍信息的动态更新。
示例演示
以下是一个基于Bootstrap的Select菜单和介绍信息的演示示例:
<div class="form-group">
<label for="menu2">请选择菜单:</label>
<select id="menu2" class="form-control">
<option value="0">请选择一个选项</option>
<option value="1">菜单1</option>
<option value="2">菜单2</option>
<option value="3">菜单3</option>
</select>
<div class="mt-3" id="menu2Intro"></div>
</div>
<script>
const menu2 = document.querySelector('#menu2');
const menu2Intro = document.querySelector('#menu2Intro');
menu2.addEventListener('change', () => {
const selectedOption = menu2.options[menu2.selectedIndex];
const selectedValue = selectedOption.value;
let intro = '';
switch (selectedValue) {
case '0':
intro = '请点击选择一个菜单';
break;
case '1':
intro = '菜单1:内容1的介绍';
break;
case '2':
intro = '菜单2:内容2的介绍';
break;
case '3':
intro = '菜单3:内容3的介绍';
break;
}
menu2Intro.textContent = intro;
});
</script>
在这个演示示例中,我们使用了Bootstrap的form-group和form-control样式美化了Select元素。
在用户选择一个选项后,根据selectedValue的值动态更新了菜单的介绍信息。
沃梦达教程
本文标题为:js实现带有介绍的Select列表菜单实例
基础教程推荐
猜你喜欢
- Ajax实现上传图像功能的示例详解 2023-02-24
- Android WebView与JS交互全面详解(小结) 2024-02-05
- JS错误之:Uncaught ReferenceError: $ is not defined 2022-12-09
- 配置Nginx根据按规则访问后台服务器--Nginx集成Vcenter 6.X HTML Console系列之 4--(共4) 2023-10-29
- JavaScript中捕获/阻止捕获、冒泡/阻止冒泡方法 2024-01-04
- IE下元素空白区域(该元素在上img在下)与图片重叠无法触发鼠标事件 2024-01-20
- webpack高级配置与优化详解 2022-11-13
- CSS学习笔记之常用Mixin封装实例代码 2024-01-20
- 纯CSS结合DIV实现的右侧底部简洁悬浮效果 2024-01-19
- 详解CSS3弹性伸缩盒 2024-01-21