我正在使用RSS到Javascript转换器,所以我得到了大约15个具有相同类的项目,我想为每个类更改每个项目。
像这样的东西。getElementsByClassName('genericclass')class = ("one")
if("one") "alreadytaken" else ("two")
if("two") "alreadytaken" else ("three)
我希望你能得到这个想法,并且使用随机类选择器可能更容易吗?
这是一种jQuery方法,我无法通过其他javascript生成的div更改类。
答案 0 :(得分:2)
您可以这样做:
$('.genericclass').each(function(i){
$(this).addClass('customClass_' + i);
});
答案 1 :(得分:1)
尝试类似
的内容var classes = ['one', 'two', 'three', 'four']
var els = document.getElementsByClassName('genericclass');
for (var i = 0; i < els.length; i++) {
els[i].className = classes[i]
}
使用jQuery
var classes = ['one', 'two', 'three', 'four']
$('.genericclass').removeClass().addClass(function(i){
return classes[i]
})
演示:Fiddle
答案 2 :(得分:0)
我会尝试使用这样的smt:
$('.genericclass').each(function(index,item){
$(item).attr('id', $(item).attr('id') + '_' + index);
});
如果你不使用jQuery,它就不会工作。
我希望能帮助你
答案 3 :(得分:0)
您可以使用提及的here脚本将数字转换为单词。然后您可以使用以下代码 -
$.each($(".genericclass"), function(i, v){
i = i+1;
$(this).addClass(toWords(i));
});
选中此fiddle
答案 4 :(得分:0)
这是另一种选择:
(function() {
var i, classes;
classes = document.querySelectorAll('.genericclass');
for(i=0; i<classes.length; i++) {
classes[i].className = 'newclass' + i;
}
}());
答案 5 :(得分:0)
最终解决方案:
setTimeout(function(){
jQuery(function () {
var classes = ['one', 'two', 'three', 'four', 'one', 'two', 'three', 'four']
$('.rssincl-itemimage').removeClass().addClass(function (i) {
return classes[i]
})})},150);
为其他javascript添加setTimeout以加载类,然后此脚本更改evryt