Javascript 风格与逻辑的分离:鼠标光标的变化

Javascript 风格与逻辑的分离:鼠标光标的变化,javascript,html,css,Javascript,Html,Css,如果Javascript知道哪些元素是可点击的,那么是否应该使用Javascript来更改鼠标光标(通过更改css),因为实际上鼠标光标不是所讨论元素的样式属性?我知道这在某种程度上是一个征求意见的问题,因此我正在寻找一个涵盖争论双方的答案——参考相关专业知识——并希望得出结论 需要明确的是,如果一个人有一个可点击的列表项,例如,通常会添加Javascript someLib.listen("#id li",func); 和css #id li{ cursor:pointer; } 而不

如果Javascript知道哪些元素是可点击的,那么是否应该使用Javascript来更改鼠标光标(通过更改css),因为实际上鼠标光标不是所讨论元素的样式属性?我知道这在某种程度上是一个征求意见的问题,因此我正在寻找一个涵盖争论双方的答案——参考相关专业知识——并希望得出结论

需要明确的是,如果一个人有一个可点击的列表项,例如,通常会添加Javascript

someLib.listen("#id li",func);
和css

#id li{
  cursor:pointer;
}

而不是
someLib。请听
处理此问题。例如,在我的例子中,我将侦听器从子元素更改为父元素,但在我看来,它似乎不遵循逻辑和表示分离的规则,我必须在两个位置更改内容。

我倾向于在非锚元素(div、span等)上的“javascript”创建链接时始终使用此选项

然后,每当我们在js中创建事件处理程序时,我们都会将这个类附加到它(作为课程的一部分)

在非锚元素上,我们真的不能做任何其他事情。是内联设置还是使用类,次要点


我要说的是,使用一个类-以后通过inspect工具更容易(对其他人)判断哪些元素已经被js修改了

我们最接近于将改变DOM的javascript与我们的“样式”分离的方法是添加/删除css类名,避免编写设置内联样式的javascript,如果不考虑<代码>光标< /代码>更改样式属性,那么可以认为逻辑上它应该由JavaScript处理,在两个MuMeMoList听众中访问文档> Boo.style >光标< /代码>没有什么不对。我知道你在说什么,但是fwiw-cursor在css规范中定义为一个样式属性,那么我们可以做什么:)-如果您调整或使用(例如jquery)样式js速记来设置事件处理程序,那么很容易插入一行来设置光标样式(默认情况下)-不必一直设置它吗?如果你希望CSS可以从js中分离出来-那么直接内联添加光标样式可能是最好的/最好的,如果js要成为可点击的元素,那么仍然可以让他们创建
标记
.jsclick { cursor:pointer }
_elementwithhandler.className += ' jsclick';