关于构建函数添加,移除,是否有 等返回值的问题 及 变量申明不用_下划线的区别问题,求大神详解
问1:hasclass为社么是return?不能用className =obj.className.match(new RegExp("(\\s|^)" + name + "(\\s|^)")); 吗?而其他2个都那么用的,见截图
问2: var item = items[i];var itemtop = item.offsetTop(); 我这里变量名没用下划线_item 和 item 有区别吗?好像听说用下划线是实例啥来着
function hasclass(obj,name){
return obj.className.match(new RegExp("(\\s|^)" + name + "(\\s|^)"));
}
function removeclass(obj,name){
if(hasclass(obj,name)){
var reg = new RegExp("(\\s|^)" +name + "(\\s|^)");
obj.className = obj.className.replace(reg, "");
}
}
function addclass(obj,name){
if(!hasclass(obj,name)){
obj.className += " " + name;
}
}