0

我有一个消息列表(一个带有几个 li 的 ul),我想将其显示/隐藏为淡入/淡出选取框。

很简单:

    function InOut(elem) {
        elem.delay(100).fadeIn(1200).delay(10000).fadeOut(1200,

        function() {
            if (elem.next().length > 0) {
                InOut(elem.next());
            }
            else {
                InOut(elem.siblings(':first'));
            }

        });
    }

    $(function() {
        $('#myul li').hide();
        InOut($('#myul li:first'));

    });

这可以按照我想要的方式单独工作(我在 JSFiddle 中对其进行了调整,并且涉及 CSS 等)。

但是,当我将代码放入我的实时站点时,它失败了。我将代码放在结束 HEAD 标记之前,以防出现“订单”问题。

我的怀疑是 $(function()... 没有生效。

该实现是一个 IP Board 站点,代码放置在该站点的模板文件之一中。这些模板文件加载了 PHP 调用、自定义 CSS 等。因此,调试有点像噩梦。

我没有看到任何异常被抛出。

由于在这种情况下我对 javascript 不够熟悉,所以我不确定这里需要做什么。而且我意识到如果无法共享页面代码,这可能会很困难(再说一遍,可能真的很简单)。

任何帮助表示赞赏。

谢谢!

/s/ Jon C. Munson II

4

1 回答 1

1

好的,我通过这些更改使这个工作(有些可能是不必要的):

            (function($){    
                 var InOut = function (elem) {
                      elem.delay(100).fadeIn(1200).delay(10000).fadeOut(1200,
                           function() {
                                if (elem.next().length > 0) {
                                     InOut(elem.next());
                                }
                                else {
                                     InOut(elem.siblings(':first'));
                                }
                           });
                  }
                  $(function(){
                       $('#ayeups li').hide();
                       InOut($('#ayeups li:first'));
                  });
             })(jQuery);

感谢大家的关注等。感谢@ianpgall 提供的帮助。:D

于 2012-10-29T04:04:03.323 回答