新手问题 时隔多年我依然不理解啥叫做 unobstrusive javascript

zzz6519003 · 2020年12月21日 · 最后由 rocLv 回复于 2020年12月22日 · 423 次阅读

qiukepu.....

我的理解是: 只通过 data-attributes, id , class 等标记在这个 element 上,

之后你在独立的地方, 通过 js 来绑定这个 element 的事件, 或者修改显示啥的。

Unobtrusive JavaScript 就是 HTML 里不内嵌 JavaScript。同理 CSS 也可以不内嵌,而是写在 CSS 文件里。

现学现卖:

这个是反例:

<input type="button" id="btn" onclick="alert('Test')" />

下面这个就是Unobtrusive JavaScript:

<input type="button" id="btn" />
var el = document.getElementById('btn');
el.onclick = function(){
  alert('Test');
};

代码的优化,出发点都是可维护,可扩展;显然下面这种维护性好了很多,不过上面的那种可读性要高很多。

有时候,其实是种取舍。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号