这个+=就是在原来类名的基础上再添加一个main-i_active的类名,
原因你这个数据不是一个数组类型,
在控制台输入
g('main_'+n)
,n替换成数字,看看输出的是不是dom
我也遇到了这个问题……楼上这样的话只能得到第一个元素了呀,不能获取所有的
终于找到错误了,是有分号打成中文字符的了(扶额)
可以啊 用<script type="text/javascript" src="你的js文件路径"></script>连接你的文件就行
可否把渲染部分的代码发一下?目测是替代字符串渲染部分出错
“javascript ”拼写错误,你少打了个r,
加点 符合 if(id.substr(0,1) == '.') ,执行的是return document.getElementsByClassName(id.substr(1))
因为设置了classname,直接把classname更改掉了
Javascript不懂
你看看main-i_active 在js是不是写露了
为什么问问题不贴代码?
可能是你得g函数写错了吧,再检查下吧
main.className +=
' main-i_active'
;
ctrl.className +=
' ctrl-i_active'
;
记得"main-i_active"前面加一个空格 这样添加类的时候才不会和之前的类"main-i"连在已签约
你图片的文件名包含中文吧,换成英文试试。
这是将字符串前面的空格替换成空字符串,也就是去除空格,\s就是空格,*指的是0到多个,这里表示空格的数量,不管有多少都会被匹配,
我也是一样的,请问你后来有解决吗
给我个邮箱。发你整个代码。
var g = function (id){ //id为该函数传入的参数
if(id.substr(0,1)=='.'){ //判断 substr(0,1) 截取传入的参数id 从0 开始截取1位 是否 和字符串'.'相同
return document.getElementsByClassName(id.substr(1)); // 条件成立 返回 document.getElementsByClassName(截取id从第1未开始到结尾的字符串)
}
return document.getElementById(id); //条件不成立 返回document.getElementById(id);
}
老师讲解的很详细,基础内容大家就自行百度和google了,现在贴出html css js源代码,使用lint语法优化了一下,仅供参考,链接: http://pan.baidu.com/s/1kVSBOij 密码: v37k,仔细对照,注意空格和_
JS声明的data数组里是h1和h2,替换的时候是把数组里h1,h2的内容赋给HTML中h2,h3的内容
http://www.runoob.com/jsref/jsref-join.html
建议你看下这个,里面有介绍join的用法
main.className+="main_i_active"
ctrl.className+="ctrl_i_active"
少了空格