Javascript 为什么Twitter div的行为像按钮?

Javascript 为什么Twitter div的行为像按钮?,javascript,html,css,reactjs,dom,Javascript,Html,Css,Reactjs,Dom,我最近试着用硒来学习。当我检查Twitter按钮时,我发现一个div而不是一个按钮 为什么Twitter div的行为像一个按钮 这是tweet按钮代码 <div dir="auto" class="css-901oao r-1awozwy r-jwli3a r-6koalj r-18u37iz r-16y2uox r-1qd0xha r-a023e6 r-b88u0q r-1777fci r-eljoum r-dnmrzs r-bcqeeo r-q4m81j

我最近试着用硒来学习。当我检查Twitter按钮时,我发现一个div而不是一个按钮

为什么Twitter div的行为像一个按钮

这是tweet按钮代码

<div dir="auto" class="css-901oao r-1awozwy r-jwli3a r-6koalj r-18u37iz r-16y2uox r-1qd0xha r-a023e6 r-b88u0q r-1777fci r-eljoum r-dnmrzs r-bcqeeo r-q4m81j r-qvutc0"><span class="css-901oao css-16my406 css-bfa6kz r-1qd0xha r-ad9z0x r-bcqeeo r-qvutc0"><span class="css-901oao css-16my406 r-1qd0xha r-ad9z0x r-bcqeeo r-qvutc0">Tweet</span></span></div>
Tweet

是不是因为Twitter使用了react(jsx),div的行为就像按钮一样。

点击和提交表单时不需要使用按钮。您可以使用JS和designdiv像按钮一样将事件侦听器附加到DOM中的任何节点。这就是为什么div的行为像一个按钮,因为它们在div上注册了onclick事件,而不是将按钮放在那里。

它们将替换以下组合:

  • JavaScript
  • CSS
  • 咏叹调
…为了制作一个像按钮一样的div


通常不建议这样做,因为它需要大量工作才能确保行为与各种客户端(包括使用屏幕阅读器或盲文显示的客户端)的真实按钮的工作方式一致。

但是div中没有一键单击。如果无法在dom中看到注册的事件,则它位于js文件中。