JavaScript是一种广泛使用的脚本语言,主要用于网页和网络应用开发。它可以实现动态内容、交互性和用户界面(UI)效果。界面建议通常指的是自动完成功能,即当用户在输入框中输入内容时,系统会根据已输入的内容提供一系列可能的选项供用户选择。
以下是一个简单的JavaScript示例,展示如何实现基于静态数据的自动完成功能:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>AutoComplete Example</title>
<style>
.suggestions {
position: absolute;
border: 1px solid #ccc;
background-color: white;
max-height: 200px;
overflow-y: auto;
}
.suggestions div {
padding: 5px;
cursor: pointer;
}
.suggestions div:hover {
background-color: #f0f0f0;
}
</style>
</head>
<body>
<input type="text" id="search-box" placeholder="Search...">
<div id="suggestions" class="suggestions"></div>
<script>
const searchBox = document.getElementById('search-box');
const suggestions = document.getElementById('suggestions');
const data = ['Apple', 'Banana', 'Cherry', 'Date', 'Elderberry', 'Fig', 'Grape'];
searchBox.addEventListener('input', function() {
const value = this.value;
suggestions.innerHTML = '';
if (value.length > 0) {
const filteredData = data.filter(item => item.toLowerCase().startsWith(value.toLowerCase()));
filteredData.forEach(item => {
const div = document.createElement('div');
div.textContent = item;
div.addEventListener('click', function() {
searchBox.value = item;
suggestions.innerHTML = '';
});
suggestions.appendChild(div);
});
}
});
document.addEventListener('click', function(event) {
if (event.target !== searchBox) {
suggestions.innerHTML = '';
}
});
</script>
</body>
</html>
input
事件监听器已正确添加。position
属性,确保其相对于输入框正确显示。通过以上方法,你可以实现一个基本的自动完成功能,并根据需要进行扩展和优化。
领取专属 10元无门槛券
手把手带您无忧上云