2015-04-21 2 views
3

Я пытаюсь уменьшить скорость страниц, поэтому попробовал «отложить атрибуцию» в обоих внешних Javascripts. Однако, когда я использую атрибуцию отсрочки, мой видеоклип на моем основном веб-сайте исчезает.Сценарий отсрочки для pagespeed

Пожалуйста, дайте мне знать, как решить эту проблему.

<!DOCTYPE html> 
<html dir="ltr" lang="en-US"> 
<head> 

<meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
<meta name="author" content="SemiColonWeb" /> 
<!-- Stylesheets 
============================================= --> 
<link href="http://fonts.googleapis.com/earlyaccess/jejugothic.css" rel="stylesheet" type="text/css" /> 
<link href="http://fonts.googleapis.com/css?family=Lato:300,400,400italic,600,700|Raleway:300,400,500,600,700|Crete+Round:400italic" rel="stylesheet" type="text/css" /> 
<link rel="stylesheet" href="css/bootstrap.css" type="text/css" /> 
<link rel="stylesheet" href="style.css" type="text/css" /> 
<link rel="stylesheet" href="css/dark.css" type="text/css" /> 
<link rel="stylesheet" href="css/font-icons.css" type="text/css" /> 
<link rel="stylesheet" href="css/animate.css" type="text/css" /> 
<link rel="stylesheet" href="css/magnific-popup.css" type="text/css" /> 

<link rel="stylesheet" href="css/responsive.css" type="text/css" /> 
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" /> 
<!--[if lt IE 9]> 
    <script src="http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js"></script> 
<![endif]--> 

<!-- External JavaScripts 
============================================= --> 
<script type="text/javascript" src="js/jquery.js"></script> 
<script type="text/javascript" src="js/plugins.js"></script> 

<!-- SLIDER REVOLUTION 4.x SCRIPTS --> 
<script type="text/javascript" src="include/rs-plugin/js/jquery.themepunch.tools.min.js" defer></script> 
<script type="text/javascript" src="include/rs-plugin/js/jquery.themepunch.revolution.min.js" defer></script> 

<!-- SLIDER REVOLUTION 4.x CSS SETTINGS --> 
<link rel="stylesheet" type="text/css" href="include/rs-plugin/css/settings.css" media="screen"/> 

<!-- Document Title 
============================================= --> 
<title>title</title> 

<style> 

    .revo-slider-emphasis-text { 
     font-size: 64px; 
     font-weight: 700; 
     letter-spacing: -1px; 
     font-family: 'Raleway', sans-serif; 
     padding: 15px 20px; 
     border-top: 2px solid #FFF; 
     border-bottom: 2px solid #FFF; 
    } 

    .revo-slider-desc-text { 
     font-size: 20px; 
     font-family: 'Lato', sans-serif; 
     width: 650px; 
     text-align: center; 
     line-height: 1.5; 
    } 

    .revo-slider-caps-text { 
     font-size: 16px; 
     font-weight: 400; 
     letter-spacing: 3px; 
     font-family: 'Raleway', sans-serif; 
    } 

</style> 

</head> 

<body class="stretched"> 

<!-- Document Wrapper 
============================================= --> 
<div id="wrapper" class="clearfix"> 

    <!-- Header 
    ============================================= --> 
    <header id="header" class="transparent-header full-header" data-sticky-class="not-dark"> 


     <div id="header-wrap"> 

      <div class="container clearfix"> 

       <div id="primary-menu-trigger"><i class="icon-reorder"></i></div> 

       <!-- Logo 
       ============================================= --> 
       <div id="logo"> 
        <a href="index.html" class="standard-logo" data-dark-logo="images/Logo.png"><img src="images/Logo.png" alt="Logo"></a> 
        <a href="index.html" class="retina-logo" data-dark-logo="images/Logo2.png"><img src="images/Logo2.png" alt="Logo"></a> 
       </div><!-- #logo end --> 

       <!-- Primary Navigation 
       ============================================= --> 
       <nav id="primary-menu"> 

        <ul> 
         <li class="current"><a href="index.html"><div>HOME</div></a></li>  

         <li><a href="home-greeting.html"><div>Welcome</div></a> 
          <ul> 
           <li><a href="home-greeting.html"><div>Greeting</div></a></li>           
           <li><a href="home-about.html"><div>About us</div></a></li>          
           <li><a href="home-staff.html"><div>Staff</div></a></li> 
           <li><a href="feature-contact.html"><div>Contact Us</div></a></li> 
           <li><a href="home-news.html"><div>News</div></a></li>          
          </ul> 
         </li> 

         <li><a href="timeAndPlace.html"><div>Service</div></a> 
          <ul> 
           <li><a href="timeAndPlace.html"><div>Time</div></a></li> 
           <li><a href="galilee-calendar.html"><div>Calendar</div></a></li> 
          </ul> 
         </li> 


         <li><a href="media-video.html"><div>Media</div></a> 
          <ul> 
           <li><a href="media-video.html"><div><i class="icon-play"></i>Video</div></a></li> 
           <li><a href="media-galleries.html"><div><i class="icon-picture"></i>Gallery</div></a></li> 
          </ul> 



         </li> 
         <li><a href="ministries-prayer.html"><div>Ministries</div></a> 
          <ul> 
           <li><a href="ministries-prayer.html"><div>Pray</div></a></li> 
           <li><a href="ministries-local-missions.html"><div>Local Mission</div></a></li> 
           <li><a href="ministries-global-missions.html"><div>Global Mission</div></a></li> 
           <li><a href="ministries-outdoors.html"><div>Outdoors</div></a></li> 
          </ul> 

         </li> 

        </ul> 


       </nav><!-- #primary-menu end --> 

      </div> 

     </div> 

    </header><!-- #header end --> 

    <section id="slider" class="slider-parallax revoslider-wrap clearfix"> 

     <!-- 
     ################################# 
      - THEMEPUNCH BANNER - 
     ################################# 
     --> 
     <div class="tp-banner-container"> 
      <div class="tp-banner" > 
       <ul> <!-- SLIDE --> 
        <li class="dark" data-transition="fade" data-slotamount="1" data-masterspeed="1000" data-thumb="images/slider/rev/main/s1-thumb.jpg" data-saveperformance="off" data-title="Welcome to Galilee"> 
         <!-- MAIN IMAGE --> 

         <!-- LAYERS --> 

         <!-- LAYER NR. 1 --> 
         <div class="tp-caption tp-fade fadeout fullscreenvideo" 
          data-x="0" 
          data-y="0" 
          data-speed="1000" 
          data-start="1100" 
          data-easing="Power4.easeOut" 
          data-elementdelay="0.01" 
          data-endelementdelay="0.1" 
          data-endspeed="1500" 
          data-endeasing="Power4.easeIn" 
          data-autoplay="true" 
          data-autoplayonlyfirsttime="false" 
          data-nextslideatend="true" 
          data-volume="mute" data-forceCover="1" data-aspectratio="16:9" data-forcerewind="on" style="z-index: 2;"><video class="" preload="none" width="100%" height="100%"> 
         <source src='images/videos/greeting.mp4' type='video/mp4' /></video> 

         </div> 

         <!-- LAYER NR. 2 --> 
         <div class="tp-caption customin ltl tp-resizeme revo-slider-caps-text uppercase" 
         data-x="350" 
         data-y="280" 
         data-customin="x:0;y:150;z:0;rotationZ:0;scaleX:1;scaleY:1;skewX:0;skewY:0;opacity:0;transformPerspective:200;transformOrigin:50% 0%;" 
         data-speed="800" 
         data-start="1000" 
         data-easing="easeOutQuad" 
         data-splitin="none" 
         data-splitout="none" 
         data-elementdelay="0.01" 
         data-endelementdelay="0.1" 
         data-endspeed="1000" 
         data-endeasing="Power4.easeIn" style="z-index: 3;">This is</div> 

         <div class="tp-caption customin ltl tp-resizeme revo-slider-emphasis-text nopadding noborder" 
         data-x="270" 
         data-y="300" 
         data-customin="x:0;y:150;z:0;rotationZ:0;scaleX:1;scaleY:1;skewX:0;skewY:0;opacity:0;transformPerspective:200;transformOrigin:50% 0%;" 
         data-speed="800" 
         data-start="1200" 
         data-easing="easeOutQuad" 
         data-splitin="none" 
         data-splitout="none" 
         data-elementdelay="0.01" 
         data-endelementdelay="0.1" 
         data-endspeed="1000" 
         data-endeasing="Power4.easeIn" style="z-index: 3;">Welcome</div>             
        </li> 
       </ul> 

      </div> 

     </div> 

     <script type="text/javascript"> 

      var tpj=jQuery; 
      tpj.noConflict(); 

      tpj(document).ready(function() { 

       var apiRevoSlider = tpj('.tp-banner').show().revolution(
       { 
        dottedOverlay:"none", 
        delay:9000, 
        startwidth:1140, 
        startheight:700, 
        hideThumbs:200, 

        thumbWidth:100, 
        thumbHeight:50, 
        thumbAmount:3, 

        navigationType:"none", 
        navigationArrows:"solo", 
        navigationStyle:"preview4", 

        touchenabled:"on", 
        onHoverStop:"on", 

        swipe_velocity: 0.7, 
        swipe_min_touches: 1, 
        swipe_max_touches: 1, 
        drag_block_vertical: false, 


        parallax:"mouse", 
        parallaxBgFreeze:"on", 
        parallaxLevels:[8,7,6,5,4,3,2,1], 
        parallaxDisableOnMobile:"on", 


        keyboardNavigation:"on", 

        navigationHAlign:"center", 
        navigationVAlign:"bottom", 
        navigationHOffset:0, 
        navigationVOffset:20, 

        soloArrowLeftHalign:"left", 
        soloArrowLeftValign:"center", 
        soloArrowLeftHOffset:20, 
        soloArrowLeftVOffset:0, 

        soloArrowRightHalign:"right", 
        soloArrowRightValign:"center", 
        soloArrowRightHOffset:20, 
        soloArrowRightVOffset:0, 

        shadow:0, 
        fullWidth:"off", 
        fullScreen:"on", 

        spinner:"spinner0", 

        stopLoop:"off", 
        stopAfterLoops:-1, 
        stopAtSlide:-1, 

        shuffle:"off", 


        forceFullWidth:"off", 
        fullScreenAlignForce:"off", 
        minFullScreenHeight:"400", 

        hideThumbsOnMobile:"off", 
        hideNavDelayOnMobile:1500, 
        hideBulletsOnMobile:"off", 
        hideArrowsOnMobile:"off", 
        hideThumbsUnderResolution:0, 

        hideSliderAtLimit:0, 
        hideCaptionAtLimit:0, 
        hideAllCaptionAtLilmit:0, 
        startWithSlide:0, 
        fullScreenOffsetContainer: ".header" 
       }); 

       apiRevoSlider.bind("revolution.slide.onchange",function (e,data) { 
        if($(window).width() > 992) { 
         if($('#slider ul > li').eq(data.slideIndex-1).hasClass('dark')){ 
          $('#header.transparent-header:not(.sticky-header,.semi-transparent)').addClass('dark'); 
          $('#header.transparent-header.sticky-header,#header.transparent-header.semi-transparent.sticky-header').removeClass('dark'); 
          $('#header-wrap').removeClass('not-dark'); 
         } else { 
          if($('body').hasClass('dark')) { 
           $('#header.transparent-header:not(.semi-transparent)').removeClass('dark'); 
           $('#header.transparent-header:not(.sticky-header,.semi-transparent)').find('#header-wrap').addClass('not-dark'); 
          } else { 
           $('#header.transparent-header:not(.semi-transparent)').removeClass('dark'); 
           $('#header-wrap').removeClass('not-dark'); 
          } 
         } 
         SEMICOLON.header.darkLogo(); 
        } 
       }); 

      }); //ready 

     </script> 


     <!-- END REVOLUTION SLIDER --> 

    </section> 

    <!-- Content 
    ============================================= --> 
    <section id="content"> 

     <div class="content-wrap"> 

      <div class="container clearfix"> 
       <div class="row clearfix"> 

        <div class="col-lg-5"> 
         <div class="heading-block topmargin"> 
          <h1>Welcome</h1> 
         </div> 
         <p class="lead">Welcoming!!</p> 
        </div> 

        <div class="col-lg-7"> 

         <div style="position: relative; margin-top: 60px;" class="ohidden" data-height-lg="426" data-height-md="567" data-height-sm="470" data-height-xs="287" data-height-xxs="183"> 
          <img src="images/portfolio/welcome.jpg" style="position: absolute; top: 0; left: 0;" data-animate="fadeInUp" data-delay="100" alt="Chrome"> 

         </div> 

        </div> 

       </div> 
      </div> 

      <script type="text/javascript"> 

       jQuery(window).load(function(){ 

        var $container = $('#portfolio'); 

        $container.isotope({ 
         transitionDuration: '0.65s', 
         masonry: { 
          columnWidth: $container.find('.portfolio-item:not(.wide)')[0] 
         } 
        }); 

        $('#page-menu a').click(function(){ 
         $('#page-menu li').removeClass('current'); 
         $(this).parent('li').addClass('current'); 
         var selector = $(this).attr('data-filter'); 
         $container.isotope({ filter: selector }); 
         return false; 
        }); 

        $(window).resize(function() { 
         $container.isotope('layout'); 
        }); 

       }); 

      </script> 

     </div> 

    </section><!-- #content end --> 



     <!-- Copyrights 
     ============================================= --> 
     <div id="copyrights"> 

      <div class="container clearfix"> 

       <div class="col_half"> 
        ⓒ 2014 godlovesjoe<br> 

       </div> 

       <div class="col_half col_last tright"> 
        <div class="fright clearfix"> 
         <a href="https://www.facebook.com" class="social-icon si-small si-borderless si-facebook"> 
          <i class="icon-facebook"></i> 
          <i class="icon-facebook"></i> 
         </a> 

         <a href="http://www.webpage.com/" class="social-icon si-small si-borderless si-globe"> 
          <i class="icon-globe"></i> 
          <i class="icon-globe"></i> 
         </a> 
        </div> 

        <div class="clear"></div> 

        <i class="icon-envelope2"></i> [email protected] <span class="middot">&middot;</span> <i class="icon-phone-sign"></i> (+1)604-657-3937<span class="middot">&middot;</span> 
       </div> 

      </div> 

     </div><!-- #copyrights end --> 

    </footer><!-- #footer end --> 

</div><!-- #wrapper end --> 

<!-- Go To Top 
============================================= --> 
<div id="gotoTop" class="icon-angle-up"></div> 

<!-- Footer Scripts 
============================================= --> 
<script type="text/javascript" src="js/functions.js" defer></script> 

</body> 
</html> 
+0

<сценарий типа = "текст/JavaScript" SRC = "JS/jquery.js" отложить> <тип скрипта = "текст/JavaScript" SRC = "JS/plugins.js" отложить> // я пытался этот код – godlovesjoe

+0

Не все сценарии должны и могут быть отложены. – adeneo

+0

, так что нет возможности уменьшить мою страницу, отредактировав мои внешние скрипты? – godlovesjoe

ответ

3

Способ работы отсрочки заключается в том, что он загружается асинхронно. Его следует использовать только для сценариев JS, которые не зависят друг от друга.

Для загрузки jquery.themepunch.tools.min.js, вам необходимо загрузить jquery, поэтому jquery не может быть отложен. Для звонка var apiRevoSlider = tpj('.tp-banner').show().revolution вам необходимо загрузить файл include/rs-plugin/js/jquery.themepunch.revolution.min.js, так что вы не можете отложить его.

Для того, чтобы увеличить скорость страницы вашего сайта я предлагаю вам следующее:

  1. Вы должны собрать все файлы CSS в один файл вместо того, чтобы 10 различных файлов. Вы можете Grunt или Gulp, и они сделают для вас работу. Кроме того, вы можете использовать инструмент онлайн: https://csscompressor.net/.

  2. Google fonts. Вам действительно нужны все эти семейные шрифты/веса? http://fonts.googleapis.com/css?family=Lato:300,400,400italic,600,700|Raleway:300,400,500,600,700|Crete+Round:400italic. Попробуйте удалить все те, которые вам действительно не нужны.

  3. Все JS должны быть в нижней части страницы. Переместите следующие скрипты в самую нижнюю часть страницы (прямо перед тегом закрытия body).

Попробуйте это:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js" ></script>window.jQuery || document.write('<script src="/js/jquery.js"><\/script>')</script> 

<script type="text/javascript" src="js/plugins.js"></script> 

<script type="text/javascript" src="include/rs-plugin/js/jquery.themepunch.tools.min.js"></script> 

<script type="text/javascript" src="include/rs-plugin/js/jquery.themepunch.revolution.min.js"></script> 

После этого, вы можете иметь встроенные сценарии:

<script> 
    var tpj=jQuery; 
    tpj.noConflict(); 
    ... 

    jQuery(window).load(function() { 
</script> 

<script type="text/javascript"> 

    jQuery(window).load(function() { 
     var $container = $('#portfolio'); 

     $container.isotope({ 
      transitionDuration: '0.65s', 
    .... 
</script>    

Это должно быть последним скрипт (это может держать атрибут Defer) <script type="text/javascript" src="js/functions.js" defer></script>

Только при условии, что ваша скорость страницы увеличится. Проблема с наличием JS во главе заключается в том, что он заблокирует отображение страницы до тех пор, пока она не закончит загрузку.

Если вы хотите продолжать оптимизацию страницы, она станет хитрой. Вам нужно будет использовать JS-компилятор с контролем зависимостей. Я рекомендую RequireJS, хотя установка является довольно сложной. Есть инструменты, которые могут помочь в настройке (Grunt/Gulp).

+0

большое спасибо! XD помогло мне так много XD – godlovesjoe

+0

Я рад, что это вам помогло. возможно, вы можете выбрать мой ответ как хороший! :) – mayrop

Смежные вопросы