关于删除添加类:
document.getElementById("a").classList.add("mystyle");
在我载入了jquery的情况下,下面这条代码为什么会报错呀? 不是和上面相等的嘛?
$("#a").classList.add("mystyle");
还有.bind()函数:
.bind("scroll",function(){}) 与 .scroll(function(){})
有何不同啊(包括所有点击 移入 移出等事件)?
关于删除添加类:
document.getElementById("a").classList.add("mystyle");
在我载入了jquery的情况下,下面这条代码为什么会报错呀? 不是和上面相等的嘛?
$("#a").classList.add("mystyle");
还有.bind()函数:
.bind("scroll",function(){}) 与 .scroll(function(){})
有何不同啊(包括所有点击 移入 移出等事件)?
可以混着用但是一定要明白,什么对象调用什么方法。你用jquery选择器选中的是jquery对象,只能用jq的api。
document.getElementsById()选中的是dom对象
1.jQurey选择器和原生dom是不一样的,需要转换成原生dom对象,get([index])返回实际的dom对象。
//$("#a").get(0)==document.getElementById("a")
$("#a").get(0).classList.add("mystyle");
2.bind()函数除了绑定原生事件还可以绑定自定义事件
//绑定自定义事件
$("#a").bind("myClick",function(){console.log("myClick")});
//触发自定义事件
$("#a").trigger("myClick");
document.getElementById("a") 和 $("#a") 都能获取到a 节点但是不代表他们都有ClassList属性,
找不到的话你可以把这2个都打印出来看看property 之间的区别
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
添加class 用 addClass()
jq早都不推荐bind方法了 用on
on是事件委托 直接捆绑与on的区别就是 用on的方法性能更好 可以防止 事件冒泡 相当于js原生的 addEventListener,为动态添加的元素也能绑上指定事件