JavaScript(jQuery)for循环问题

| 大家好,我是JavaScript的新手,并且为此使用jQuery库。 基本上,我正在尝试创建此行的倍数,并且使用\“:eq(0)来做到这一点。 问题是:eq(0)在代码中重复3次,并且每次重复时我正在执行的循环都有不同的数字。 这就是我从中得到的(:eq(0)、: eq(1)、: eq(2)、: eq(3)等。) 我需要它来执行此操作(:eq(0)、: eq(0)、: eq(0)、: eq(1):eq(1):eq(1)等)
for (i = 0; i < 6; ++i) {
    var $titleMarquee = \'<marquee scrollamount=\"5\" direction=\"left\" width=\"233\" align=\"left\" behavior=\"alternate\" loop=\"1\"><span>\';
    var $lieq = \"li:eq(\"+i+\")\";
    $(\"ul.side-block-content \"+$lieq+\"\").mouseenter(function() {
        $(\"ul.side-block-content \"+$lieq+\" .article-title a span\")
            .replaceWith($titleMarquee+$(\"ul.side-block-content \"+$lieq+\" .article-title a\").text()+\"</span></marquee>\");
    });
}
如果有人可以让我知道如何正确执行此循环,或者可能如何为它重新创建代码以完成同样的事情,那将会很棒。 提前致谢。 @尼克的答案:
var $titleMarquee = \'<marquee scrollamount=\"5\" direction=\"left\" width=\"233\" align=\"left\" behavior=\"alternate\" loop=\"1\"><span>\';
    for (i = 0; i < 6; ++i) {
        for (j = 0; j < 7; ++j) {
        $(\"ul.side-block-content li:eq(\"+i+\")\").mouseenter(function(){$(\"ul.side-block-content li:eq(\"+i+\") .article-title a span\").replaceWith($titleMarquee+$(\"ul.side-block-content li:eq(\"+i+\") .article-title a\").text()+\"</span></marquee>\");});
        $(\"ul.side-block-content li:eq(\"+i+\")\").mouseleave(function(){$(\"ul.side-block-content li:eq(\"+i+\") .article-title a marquee\").replaceWith(\'<span>\'+$(\"ul.side-block-content li:eq(\"+i+\") .article-title a\").text()+\"</span>\");});  
        }
    }
这是我现在正在使用的,并且无法正常工作。我做得对吗? @吉利3
$(\"ul.side-block-content li marquee\").each(function() {
    this.stop();              // prevent the marquee from scrolling initially
    }).mouseenter(function() {
    this.start();             // start the scroll onmouseenter
    });

<marquee scrollamount=\"5\" direction=\"left\" width=\"233\" align=\"left\" behavior=\"alternate\">
已邀请:
当您将over3ѭ文本悬停在上方时,您似乎正在尝试滚动它。那正确吗? 只需将选取框代码放在原始html中,然后执行以下操作:
$(function ()
{
    $(\"ul.side-block-content li marquee\").each(function() {
        this.stop();              // prevent the marquee from scrolling initially
    }).mouseenter(function() {
        this.start();             // start the scroll onmouseenter
    });
});
我也想说不要使用marquee标签,因为它已被弃用,而改用jQuery插件,但是我看到的最后一个jQuery marquee插件实际上在后端使用了
<marquee>
。所以...
您可以在其中嵌入另一个for循环,如下所示:
for (i = 0; i < 6; ++i) {
  for (j = 0; j < 3; ++j) {
    // repeat i three times, and use :eq(\"+i+\")
  }
}

要回复问题请先登录注册