新手求助, JavaScript 无法修改 html 元素的属性是怎么回事?

2015-05-06 19:25:03 +08:00
 rundis

rt,检查了好久,也没能找到原因。。。
这些代码的目的是先获得新的url值,然后替换掉原来的image元素的src属性为新的url值,通过这个来达到变更图片的目的。。。
然而一直试都是没能改过来。。。
按理来说:
document.getElementsByClassName("classname").attribute = newValue;
不是可以修改类名为"classname"的元素的属性么?
求助,万分感谢!!!

http://ww1.sinaimg.cn/large/005FchG6gw1erur5zihodj30ku0h0n1q.jpg

一直发不出图。。。图放二楼了。。。

1794 次点击
所在节点    问与答
5 条回复
rundis
2015-05-06 19:25:29 +08:00
rundis
2015-05-06 19:31:52 +08:00
另外分别在修改前和修改后审查了元素,发现src属性的值的确没有变化,不是反应问题。。。
YuJianrong
2015-05-06 20:28:34 +08:00
getElements不是返回一个element而是返回一个array like object啊,注意人家函数名是复数。拿第一个改src就好了(如果存在的话),顺便chrome devtools可以单步到你的那句话到了看一下值不就好了……
yangg
2015-05-06 20:30:16 +08:00
getElementByClassName 返回nodeList, 取第一个就行了
[0].src = 'xx';
现在其实可以用 document.querySelector('.class')

https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementsByClassName
rundis
2015-05-07 10:58:31 +08:00
@YuJianrong
@yangg
谢谢谢谢!之前不知道getelement返回的是array…然而直接对数组操作也没有报错Zzz

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/188994

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX