0

我正在使用下面的这个脚本,它在使用 jQuery 1.4 但不适用于 1.7.2 时有效:

<script>
    setTimeout(function(){
      if ($('#hpnews').length > 0) {
        $('#hpnews').fadeIn('slow');
      }
    }, 3000);
</script>

现在有没有人为什么它不起作用?

谢谢

4

1 回答 1

0

所以setTimeout只触发一次,并等待 3000 毫秒。

你确定你的 DOM 已经完全准备好了?

尝试以下操作:

<script>

    $(document).ready(function() {

        setTimeout(function(){
            if ($('#hpnews').length > 0) {
                $('#hpnews').fadeIn('slow');
            }
        }, 3000);

    });

</script>

此外,在其中放置一个也可能很方便alert(),只是为了确保它肯定会触发。

编辑

根据您对 $ 不是函数的评论,$ 变量很可能被另一个框架(或类似框架)覆盖,以下方法之一将解决此问题。

$j = jQuery.noConflict();
$j(document).ready() // use $j instead of $

jQuery(document).ready() // or use the actual jQuery var
于 2012-07-10T10:05:10.117 回答