10.事件绑定.html 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. <script src="./babel.min.js"></script>
  8. <script src="./react.development.js"></script>
  9. <script src="./react-dom.development.js"></script>
  10. </head>
  11. <body>
  12. <div id="root"></div>
  13. <script type="text/babel">
  14. const root = ReactDOM.createRoot(document.getElementById("root"));
  15. // 事件绑定
  16. // 1.DOM中 事件绑定: onClick onChange onBlur onSubmit.....
  17. // 2.事件流中的事件绑定: addEventListener('click/mousedown...',function(){},true(鼠键捕获)/false(事件冒泡)) removeEventListener.....
  18. // jsx语法 在 script标签书写 不需要获取元素了
  19. function App() {
  20. function handleClick() {
  21. // alert("点击触发了")
  22. console.log("触发")
  23. }
  24. // 调用 名字() => 立即执行
  25. return (
  26. <div>
  27. {/*点击事件绑定*/}
  28. <p onClick={handleClick}>点击</p>
  29. {/*不提倡在标签内写方法 页面排版错乱*/}
  30. <input type="text" onChange={function(){
  31. alert("改变了")
  32. }} />
  33. <input type="text" onBlur={() => {
  34. console.log("失焦了")
  35. }} />
  36. <input type="submit" onClick={handleClick()} />
  37. </div>
  38. )
  39. }
  40. root.render(<App/>)
  41. </script>
  42. </body>
  43. </html>