2

如何在 jQuery 中编写下面的代码并将其应用于所有带有something. 我试图让https://gist.github.com/1129073应用于由类指定的多个元素,而不是仅以 id 为目标的单个元素。

更具体地说,我正在查看http://jsfiddle.net/fgnass/9BkjZ/并试图使其在类上工作而不仅仅是一个 id,因此它可以应用于许多元素。

(function(a,b,c){
  setInterval(function(){
    for(
      b=0;
      b<8;c||(a.innerHTML+='<i><b>'),
      a.childNodes[b].style.opacity=(++b-~c)%8*.1+.2);
    c=-~c
  },99)
})(document.getElementsByClassName('something'));

上面的代码仅适用于作为最后一行someting使用时的第一个带有类名的元素。})(document.getElementsByClassName('something')[0]);

4

3 回答 3

2

这一点 jQuery 应该和你的 javascript 做同样的事情。

$('.something').each(function() {
    for (i = 0; i < 8; i++) 
    {
        $(this).append('<b class="b' + i + ' o' + i + '" data-opacity="' + i + '"><i>•&lt;/i></b>');
    }
});

setInterval(function() {
    $('.something b').each(function () {
        $(this).removeClass('o' + $(this).attr('data-opacity'));
        $(this).attr('data-opacity', (parseInt($(this).attr('data-opacity')) + 1) % 8);
        $(this).addClass('o' + $(this).attr('data-opacity'));
    });
}, 99);

您可能还想查看以下内容,它也可以在不使用图像的情况下创建加载微调器:http:
//fgnass.github.com/spin.js/
http://cssload.net/
http://www。 jquery4u.com/animation/10-css3-jquery-loading-animations-solutions/

于 2012-10-04T00:20:56.143 回答
0

它也可以工作

$('.something').show();
于 2012-10-03T17:16:24.060 回答
0

稍微解释一下

$('.something').fadeIn();

取自 SLaks 答案

$('.something')

将使用 .something 类抓取所有元素,而 fadeIn() 是一个内置的 jquery 方法,它将相关元素的不透明度从 0 更改为 1。请注意,如果您的元素的不透明度为 1 并且您调用fadeIn,我认为它会闪烁并淡入。除了fadeIn 之外,还有很多其他jquery 实用程序可以在jquery 网站上找到。

$('SELECTOR')

SELECTOR 可以是任何 css 选择器,例如

$('#myID .something')
$('#myID > .something')
$('#myID .something:first-child')
$('div.className #myid')
于 2012-10-03T17:27:12.460 回答