Jquery 为什么人们使用按钮和其他HTML输入?

Jquery 为什么人们使用按钮和其他HTML输入?,jquery,web-deployment,Jquery,Web Deployment,除了文本输入框之外,我不明白为什么有人想要使用HTML输入 尝试在所有浏览器中对它们进行样式化是一场噩梦,而将普通div样式化为按钮,然后使用jquery的onClick函数要容易得多 像这样: 当人们可以正常设置div的样式时,为什么要使用按钮然后尝试设置它们的样式?有什么优势吗?我遗漏了什么吗?按钮和输入元素可以通过使用Tab键获得焦点,然后通过键盘进行交互。样式为按钮的div将永远不会通过选项卡接收焦点 虽然这种行为在非表单元素中并非不可能模仿,但您可以免费使用它们。有可访问性和更广泛的

除了文本输入框之外,我不明白为什么有人想要使用HTML输入

尝试在所有浏览器中对它们进行样式化是一场噩梦,而将普通div样式化为按钮,然后使用jquery的onClick函数要容易得多

像这样:


当人们可以正常设置div的样式时,为什么要使用按钮然后尝试设置它们的样式?有什么优势吗?我遗漏了什么吗?

<代码>按钮和<代码>输入元素可以通过使用Tab键获得焦点,然后通过键盘进行交互。样式为按钮的
div
将永远不会通过选项卡接收焦点


虽然这种行为在非表单元素中并非不可能模仿,但您可以免费使用它们。

有可访问性和更广泛的兼容性。如果禁用了JavaScript,会发生什么?您的“按钮”不起任何作用,而本机按钮功能仍会启动

我的初始答案是回退。如果你喜欢的样式在我的IE5中不起作用,那么至少你知道一个按钮会起作用。你可以在没有javascript的情况下使用HTML输入!您的选择将阻止非JS用户。同意,从今天起,对这些HTML输入的需求已经大大减少。有些库依赖于这些控件,比如验证。但是你可以经常注意它们。这似乎是堆栈溢出中的一个bug。我不能+1这个就够了。人们往往会忘记,很大一部分互联网用户严重依赖网站的无障碍功能。
$('.clickme').hover(function() {
    $(this).animate({"color":"#e8a010","font-size":"52pt"}, 1000);
}, function() {
    $(this).animate({"color":"#fff","font-size":"13px"}, 1000);
});