javascript - 使用 JQuery 淡入标题

标签 javascript jquery html fadein

我有以下 HTML:

      <div id="header">
         <div id="logo_title">
            <p> What's Playing? </p>
         </div>
    </div>

我想让它在用户第一次访问网站时慢慢淡出。我正在使用以下 JavaScript:

  $(window).load(function () {
     $("#header").fadeIn(10000); 
   });

CSS 如下:

      #logo_title, #logo_subtitle{
         height: 45px;
         font-family: 'Open Sans', sans-serif;
         font-weight: 300;
         font-size: 80px; 
         z-index: 4;
         text-align: center;
         margin: 100px 0px 0 0;
     line-height: 75px;
    }

但它似乎不起作用。知道我做错了什么吗?我是新来的!

谢谢!

最佳答案

  1. 所有改变元素的 display 的 jQuery 动画往返 none如果元素已经处于该状态,则不会生效。您需要先隐藏它。

    $("#header").hide().fadeIn(10000);
    
  2. 使用$(document).ready ,不是$(window).load 。事实上,您可能想避开各种事件,转而使用 <script> block 直接位于标题元素下方以最小化 FOUC。当然,如果你可以的话,那就没有必要了……

  3. 使用 CSS 来完成此任务。 (您可能还需要使用 -webkit- 前缀来复制每一个。)

    @keyframes fade-in {
        from { opacity: 0; }
        to { opacity: 1; }
    }
    
    #header {
        animation: fade-in 10s linear;
    }
    
  4. 这似乎是一个有点烦人的动画。您确定有必要吗?

  5. 这只是一个猜测,但您也许可以使用更具描述性的 HTML:

    <header id="header">
        <h1 id="title">What’s Playing?</h1>
    </header>
    

关于javascript - 使用 JQuery 淡入标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21689661/

相关文章:

javascript - 电子邮件地址验证但创建帐户,但如果电子邮件地址无效

javascript - 使用 webpack 将 react 和 react-router 导出到独立的 html 文件时,应用程序不运行

javascript - 当我选中复选框时,iCheck 启用/禁用输入文件( Bootstrap )按钮

javascript - 为什么 tinymce 没有出现在动态添加的文本区域

html - Float Left <UL> list with float right text boxes 设置在 UL 列表下方而不是设置相邻

javascript - 网站需要黑莓用户将事件添加到他们的日历的按钮

javascript - 通过 Javascript 更改 Webkit 属性?

javascript - 如果TR的值与jquery中的另一个TR相似,如何隐藏TR?

javascript - 带有双美元 ($$) 的 jQuery 选择器

html - css 变换旋转和倾斜在 safari 中不起作用