【发布时间】:2013-03-25 18:27:17
【问题描述】:
正如一些人可能已经知道的那样,选择元素的样式是一场噩梦,如果没有一些 javascript 技巧,实际上是不可能的。 HTML5 中的新数据列表可以起到相同的作用,因为用户会看到一个选项列表,并且值记录在输入文本字段中。
这里的限制是,在用户开始在文本字段中输入内容之前,列表不会出现,即使这样,也只会根据他们的输入显示可能的匹配项。我想要的行为是,只要将焦点放在该字段上,整个选项列表就会变得可见。
所以我有这个代码 - view on jsbin
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>Input - Datalist</title>
</head>
<body>
<input list="categories">
<datalist id="categories">
<option value="Breakfast">Breakfast</option>
<option value="Brunch">Brunch</option>
<option value="Lunch">Lunch</option>
<option value="Dinner">Dinner</option>
<option value="Desserts">Desserts</option>
</datalist>
</body>
</html>
我正试图用这个 Javascript 来显示它:
var catVal = document.getElementsByTagName("input")[0],
cat = document.getElementById("categories");
catVal.style.fontSize = "1.3em";
catVal.addEventListener("focus", function(event){
cat.style.display = "block";
}, false);
任何帮助将不胜感激,
干杯
【问题讨论】:
-
我正在努力实现同样的目标,到目前为止你运气好吗?
标签: javascript jquery html