我有一个脚本
var firstImg = row.getElementsByTagName('img')[0];
然后
if (x){ firstImg.src='/images/checked.png'; }
我想定义 img 应该是class='something'
(使用 class='something' 获取第一个 img)
我有一个脚本
var firstImg = row.getElementsByTagName('img')[0];
然后
if (x){ firstImg.src='/images/checked.png'; }
我想定义 img 应该是class='something'
(使用 class='something' 获取第一个 img)
使用
querySelectorAll('img.classname')[0]
这将返回第一个将类设置为类名的图像。但是 jQuery 更好!!
$('img.classname')
就设置好了...
firstImg.className += "something";
...或者...
firstImg.classList.add("something");
如果您可以摆脱不支持旧浏览器的情况。
进一步阅读(免责声明:链接到我自己的博客)。
如果您打算获取具有特定类名的元素,您可以使用...
document.getElementsByClassName("something");
...或者...
document.querySelectorAll(".something");
请记住getElementsByClassName()
不在 <= IE8 中。
您可以使用...
var getElementsByClassName(nodeList, className) {
var i, results = [];
for (i = 0; i < nodeList.length; i++) {
if ((" " + nodeList[i].className + " ").indexOf(" " + className + " ") > -1) {
results.push(nodeList[i]);
}
}
return results;
}
当然,如果你使用的是 jQuery,那就超级简单了……
$(".something");
这将选择第一个img
class='something':
var firstImg = $('img.something')[0];
如果你不能扔掉旧的浏览器,那么你需要一个循环。
var imgs = row.getElementsByTagName('img'),
some_class = 'something',
i, first_img;
for (i = 0; i < imgs.length; i++) {
if ((' ' + imgs[i].className + ' ').indexOf(' ' + some_class + ' ') > -1) {
first_img = imgs[i];
break;
}
}