JavaScript 作为 HTML 属性是不好的做法吗?

2024-07-01

例子:https://stackoverflow.com/a/372​​89566/710887 https://stackoverflow.com/a/37289566/710887

我看到这种情况越来越频繁地发生。

我总是被教导要将 javascript、css 和 html 分开(当然 html 链接到源/脚本)。

在 HTML 属性中使用 Javascript(例如onclick, onchange, etc:)不好的做法?

<span id="valBox">25</span>
<input type="range" min="5" max="50" step="1" value="25" onchange="valBox.textContent = this.value">

一般来说,是的,这是非常糟糕的做法,但是,有时,在测试/快速实现时,它会快得多:

<button onclick="alert('Hello World!');">Hey There!</button>

VS

<script>
  window.onload = function()
  {
      document.getElementById("button").onclick = function()
          {
              alert("Hello World!");
          }
  }
</script>
<button id="button">Hey There!</button>

话虽如此,后者更适合调试/代码维护。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaScript 作为 HTML 属性是不好的做法吗? 的相关文章

  • 在 Javascript 中访问对象属性

    我正在尝试访问电子邮件和密码字段 但我不知道在哪里 0 来了 我正在从 rethinkdb 检索对象 它看起来不错 没有 0 但后来我使用 Lodash assign 像这样的方法 var user new User var finduse
  • .catch() 的承诺被拒绝,但在 Promise.allSettled 中显示为已履行[重复]

    这个问题在这里已经有答案了 这是问题的简化版本 有一些承诺 但很少 then 链条 以及一个 catch 错误处理块 每个承诺都可能解决或拒绝 因此我使用Promise allSetted根据排列顺序和状态了解哪个承诺失败了 当所有承诺都解
  • 点运算符不获取 Mongoose Document 对象的子属性

    console log gt gt gt gt gt gt user user outputs gt gt gt gt gt gt user username user1 salt 3303187e50a64889b41a7a1c66d3d
  • 使用 getElementById 获取锚标记的对象

    anchorobject document getElementById backbutton alert anchorobject a href http www hotmail com back a 上面的代码提醒 href 属性字符串
  • css/html:空格中断修复,现在无法正常编码?

    是的 所以我遇到的问题是 如果你输入一个没有空格的长句子 例如 eeeeeeeeeeeeeeeeeeeeeeeeee 它会自行中断 但现在我需要开始输入一些丑陋的不间断编码 例子 http jsfiddle net r3CFJ http j
  • 在本地计算机上验证 HTML

    我目前正在尝试学习 HTML 和 Java EE Servlet 编程 我的本地计算机 Orion 应用程序服务器 上运行着一个应用程序服务器 并且我正在使用同一台计算机上运行的浏览器连接到我部署在该服务器上的网页 定向到http loca
  • Phantomjs / Casper.js 带有旋转代理?

    我有一个简单的目标 使用以下任一方式加载网页phantom js 开箱即用 或casper js 很好也更容易 但是使用代理并旋转它如果当前列表不好 即网页加载失败或类似情况 则从列表中选择 我知道 casper js 有 proxypar
  • 禁用 WebSocket 证书验证

    我需要禁用 WebSocket 的证书验证 因为我使用的是自签名证书 我在这个问题中发现Websocket SSL 连接 https stackoverflow com questions 30902547 websocket ssl co
  • 用javascript去掉未使用的小数

    我有一个货币输入 只需要返回有效数字 输入始终有两位小数 因此 4 00 gt 4 4 10 gt 4 1 4 01 gt 4 01 这是我目前正在做的事情 chop off unnecessary decimals if val char
  • PHP Post 数组的数组

    我想从 HTML post 请求更改两个不同的表到运行 PHP 的服务器 以前 当我只想更改一张表时 所有列和值都放入 POST 数组中 所以我会 colname1 gt val1 colname2 val2等等 然后我将循环 POST 来
  • 在 emberjs 中绑定子视图和集合

    我正在尝试渲染视图Team里面一个 outlet This Team视图由一个简单的Person视图 团队领导者 以及集合Person意见 团队成员 插座是通过调用设置的connectOutlet 在应用程序控制器上 虽然Person子视图
  • Javascript“悬停时”循环

    任何人都可以帮助我解决这个问题 我有一个按钮 当悬停时会触发一个操作 但我希望只要按钮悬停就重复它 我很感激任何解决方案 无论是在 jquery 还是纯 javascript 中 这是我的代码此时的样子 在 jquery 中 var scr
  • 如何在单击时和用户单击离开时关闭菜单?

    我有以下代码 function document ready function clicker class click function show menu users show jQuery clicker class click fun
  • 未知深度的普通 JS 级联选择

    想要制作一个通用的级联下拉菜单 但递归能力较弱 代码应该以 做出选择后 即可选择物品 衣服或小玩意 Levis Gucci 或 LG Apple 之一 当做出选择时 一件选择 搭配 Levis 牛仔裤或夹克或 Gucci 鞋子或连衣裙 当做
  • Jquery - 如何获取样式显示属性“none / block”

    有没有办法获得 style display 属性 该属性要么没有 要么有块 DIV div class Error cellphone style display block p class cellphone style display
  • 从 JavaScript 中的内部函数返回?

    我有一个 jQuery 支持的 JavaScript 函数 它迭代字段列表并检查它们是否为空 如果是 则阻止表单的提交 required fields forEach function field if field val field ad
  • 与 Chrome 内容安全策略配合使用的 Javascript 模板引擎

    Chrome API 的清单版本 2 删除了执行不安全评估的功能 这意味着使用 eval 函数或通常从文本动态创建函数 看起来大多数 如果不是全部 Javascript 模板引擎都会这样做 我使用的是 Jaml 但我尝试了其他几个 如bac
  • TypeError:使用 Svelte 和 jest 时 Select 不是构造函数

    当为 Svelte 组件编写 Jest 测试时 我得到了TypeError Select is not a constructor当组件使用 es6 导入语法导入库时出错 测试选择 js
  • HTML / Javascript - 通过单击父行来展开和折叠表行(子行)

    我几天来一直在尝试解决一个问题 终于明白 如 果没有帮助 我将不会成功 我想做一件我们每天在互联网上看到的常见事情 能够单击表格行以显示更多详细信息 但这里的更多细节并不意味着文本块 而是指与父行具有相同形状的子行 以下是 HTML 表格的
  • HTML5离线缓存谷歌字体API

    我正在尝试创建一个离线 HTML5 测试应用程序 并同时使用新的 google fonts api 有谁知道如何缓存远程字体 简单地将 api 调用放入缓存清单中是行不通的 我认为这是因为 api 实际上加载了其他文件 ttf eot 等

随机推荐

  • 从数组中删除匹配元素的第一个实例

    假设我有数组 1 2 3 1 2 3 我想删除 比如说 的第一个实例2从数组给出 1 3 1 2 3 最简单的方法是什么 li delete at li index n li length li li length 超出范围 所以 li l
  • 从批处理文件运行 .jar

    我已经创建了一个可执行文件 jar文件 我怎样才能执行 jar使用批处理文件而不提及类路径 在 Windows 上 您可以使用以下命令 start javaw jar JarFile jar 通过这样做 命令提示符窗口不会保持打开状态
  • 如何检查设备是否可以通过有效的 WiFi 连接访问互联网?

    我指的是设备已连接到接入点但由于某种原因被阻止使用此 AP 访问互联网的情况 检查wifi是否启用 WifiManager wfManager WifiManager getSystemService Context WIFI SERVIC
  • list_local_device 张量流未检测到 GPU

    有没有办法检查我安装了GPU的版本Tensorflow nvidia smi 2017 年 12 月 18 日星期一 23 58 01 NVIDIA SMI 384 90 Driver Version 384 90 GPU Name Per
  • 当 HTML 作为输入字符串和 CSS 作为文件传递时,使用 Html2pdf 将 Itext7 HTML 转换为 PDF

    我已经通过 Itext 5 XMLWorker 实现了 HTML 到 PDF 的转换 请找到下面的代码 using var ms new MemoryStream using var document new Document using
  • android - 自动检测未使用的绘图

    问题是 我在开发 Android 应用程序时使用了许多图标和图片 后来我替换了其中的许多图标和图片 但保留了旧的 以防我需要再次使用它们 我现在有大量我的 png 的drawable文件夹中 许多现在都未使用 手动整理它们需要很长时间 有没
  • WIX 生成的 MSI 的自定义卸载程序

    我有一个从 WIX 脚本生成的 MSI 我的问题与此类似question https stackoverflow com questions 563236 custom repair and uninstall funtions for m
  • 为什么我的侧载应用程序在几天后停止工作?

    所以我实际上对 iOS 开发有点陌生 然而 在学习如何操作后 我已经制作了一些应用程序 但我注意到的一件事是 如果我使用手机来测试我的应用程序 该应用程序将在插入时运行 也许一两天后 但在那之后 如果我尝试打开它 它就会停止工作并崩溃 就像
  • 使用lastModified日期搜索DAM资产和Cq页面|查询生成器

    我正在根据上次修改日期查询 cq 页面和资产 以下是必须放入查询生成器调试器中的文本 fulltext geometrix 1 group p or true 1 group 1 group p and true 1 group 1 gro
  • 使用递归求数字之和

    对Java来说相当陌生 但我正在编写一个教程 其中我必须使用递归找到用户输入整数的数字总和 到目前为止 这是我的代码 公开课其他 public static void main String arg Scanner s new Scanne
  • 无法使用带有 socket.io 的媒体源从媒体记录器跳转到流

    当首先加载视频观察客户端然后加载网络摄像头客户端时 以下代码可以正常工作 但是 如果顺序交换或以任何方式中断流 例如通过刷新任一客户端 则流将失败并且媒体源会将其就绪状态更改为关闭 我的假设是 在开始时接收的视频需要初始化标头才能启动 并且
  • R:使用字符串作为参数来改变 dplyr 中的动词

    我正在构建一个闪亮的应用程序 它需要允许用户定义新的绘图变量 具体来说 我想允许用户定义要在 mutate 动词中使用的表达式 服务器接收文本形式的表达式 我想知道如何让 mutate 在 dplyr 0 7 中执行它 我可以使用 muta
  • 循环不断在字符串中添加空格?

    我有以下代码 sHexPic string to hex sPic sHexPic insert sHexPic begin 2 sHexPic insert 2 我想知道如何将其放入计数循环中并在每第二个字符后添加一个空格 到目前为止 这
  • HTACCESS 404 错误无法正常工作

    问题 在此服务器上找不到请求的 URL welcome php 此外 尝试使用 ErrorDocument 处理请求时遇到 404 Not Found 错误 事情是这样的 当我访问 www mysite com page 时它工作正常 如果
  • Symfony 管理生成器原则executeCreate

    感谢您对此的帮助 我对 Symfony 框架非常陌生 所以只是想了解一下它 我希望能够拦截从管理区域提交的表单并修改数据 这是我到目前为止所得到的 基本形式 apps backend modules proposition actions
  • Google Chrome/Safari 相同的浏览器名称和版本!

    我有一个 asp net 网站 我在其中检查支持的浏览器 那是我的用户 Request Browser Browser 浏览器名称 和 Request Browser MajorVersion 浏览器版本 这里的问题是浏览器 Safari
  • Drupal 用户配置文件页面中的自定义菜单选项卡

    我想在用户个人资料页面顶部的 查看 编辑 文件 菜单链接旁边添加一个菜单项 当用户单击它时 它的行为应该与其他页面类似 因为它不仅启动到新页面 而且他们单击的菜单项 我们称之为 时髦按钮 会变成灰色 并且用户仍停留在新页面中 用户个人资料区
  • 如何向 CSV 文件添加列?

    我有以下 CSV 文件 header 1 header 2 header 3 summin 1 summin 2 summin 3 summin 4 summin 5 summin 6 我如何使用 CSV 类附加一列数据 结果将如下所示 h
  • C# 中线程之间发送消息

    如何在线程之间发送和接收消息 例如 一种解决方案是共享并发队列 尽管它的名称 并发队列 http msdn microsoft com en us library dd267265 aspx 这将允许您将一个对象从一个线程入队 并让另一个线
  • JavaScript 作为 HTML 属性是不好的做法吗?

    例子 https stackoverflow com a 372 89566 710887 https stackoverflow com a 37289566 710887 我看到这种情况越来越频繁地发生 我总是被教导要将 javascr