请问this对象可以是当前的标签吗?

ryrx 2007-04-06 11:18:47
比如代码如下:

<div onclick="do(this)">
<span>求助</span>
</div>

js:
function do(obj){
var s=obj.getElementsByTagName("span");
s.style.color = "blue";
}

其中的do(this),这个this能代表div对象吗?
...全文
146 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ryrx 2007-04-06
  • 打赏
  • 举报
回复
谢谢啊,我调试成功了。请问为什么要用for循环呢?
在<div>里只有一个<span>啊
是不是因为getElementsByTagName得到的是数组?
hengxin54 2007-04-06
  • 打赏
  • 举报
回复
function ddd(obj){
var s=obj.getElementsByTagName("span");
for (var i=0;i<s.length;i++){
s[i].style.color = "blue";
}
}

楼主分都不给, 靠....
ryrx 2007-04-06
  • 打赏
  • 举报
回复
我把do()改成ddd(),但是运行没反应呢。。。
hengxin54 2007-04-06
  • 打赏
  • 举报
回复
可以
但是你的函数关键字会出问题,do是一关键字,换一个名吧
matrixy 2007-04-06
  • 打赏
  • 举报
回复
getElementsByTagName得到的是一个集合,是一个对象下属的以该标签名的一个集合,s.style.color会出现错误的,提示找不到属性.一个的话,你可以这样改
s[0].style.color = "blue";

function do(obj){
obj.firstChild.style.color = "blue";
}

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧