我想知道是否有可能创建一种新的输入,而不是普通的数字、文本等。例如,我正在为我的实习工作创建一个森林火灾模型,我试图添加的一件事是风。我想知道我是否可以做一些像<input type='wind'/>这样的事情,并定义它看起来是什么样子,以及它将如何表现。我可以用其他方法来做,但我也想知道是否有可能做这样的事情。
谢谢
发布于 2013-04-08 07:58:13
可用input类型的列表如下:http://www.w3.org/community/webed/wiki/HTML/Elements/input
type属性使用默认文本枚举(即,您只能使用这些值)。
但是,没有什么可以阻止您向输入添加class="wind"或类似的东西,并使用JavaScript来改变所有这些输入的行为。
发布于 2013-04-08 13:02:06
在实践中,没有什么能真正阻止你用HTML语言编写<input type='wind'/>、样式化和脚本化它,例如(使用jQuery) $('input[type=wind]').click(handler)。它不是有效的HTML,但这只是意味着它不符合规范;浏览器并不关心这一点。它们会将元素视为普通的文本输入框,因为它们无法识别属性值,因此将使用默认的type='text'。这意味着DOM节点将text作为type属性的值,但是它的attributes数组(好吧,类似数组的对象)仍然将wind作为type的值
因此,这就像@ExplosionPills建议的使用<input class='wind'>一样,只是使用了不同的属性名称,并且具有额外的复杂性。无论哪种方式,后备(在禁用脚本的情况下)都是一个普通的文本输入框。
如果回退是无关紧要的(如果没有JavaScript,页面将根本无法工作),最简单的方法是将span或div元素与class一起使用,并以您喜欢的方式实现它。然后,您就不必处理普通文本输入框的默认呈现和行为;为了支持您自己的呈现和功能,删除它们可能有点棘手。
https://stackoverflow.com/questions/15869267
复制相似问题