2016-12-31 93 views
1

我正在構建一個包含Angular 2和Materialise CSS的網頁;然而,當我嘗試使用Materialise的的視差特性,圖像不顯示實現Parallax在Angular2應用程序中不顯示圖像

這裏是我的Angular2組件類:

import { Component } from '@angular/core'; 

@Component({ 
    selector: 'my-app', 
    template: ` 
    <img src="https://unsplash.it/1425/500" alt="Unsplashed background img 1"> 
    <div id="index-banner" class="parallax-container"> 
     <div class="section no-pad-bot"> 
     <div class="container"> 
      <br><br> 
      <h1 class="header center teal-text text-lighten-2">Parallax Template</h1> 
      <div class="row center"> 
      <h5 class="header col s12 light">A modern responsive front-end framework based on Material Design</h5> 
      </div> 
      <div class="row center"> 
      <a href="http://materializecss.com/getting-started.html" id="download-button" class="btn-large waves-effect waves-light teal lighten-1">Get Started</a> 
      </div> 
      <br><br> 
     </div> 
     </div> 
     <div class="parallax"><img src="https://unsplash.it/1425/500" alt="Unsplashed background img 1"></div> 
    </div> 
    <div class="container"> 
     <div class="section"> 
     <!-- Icon Section --> 
     <div class="row"> 
      <div class="col s12 m4"> 
      <div class="icon-block"> 
       <h2 class="center brown-text"><i class="material-icons">flash_on</i></h2> 
       <h5 class="center">Speeds up development</h5> 
       <p class="light">We did most of the heavy lifting for you to provide a default stylings that incorporate our custom components. Additionally, we refined animations and transitions to provide a smoother experience for developers.</p> 
      </div> 
      </div> 
      <div class="col s12 m4"> 
      <div class="icon-block"> 
       <h2 class="center brown-text"><i class="material-icons">group</i></h2> 
       <h5 class="center">User Experience Focused</h5> 
       <p class="light">By utilizing elements and principles of Material Design, we were able to create a framework that incorporates components and animations that provide more feedback to users. Additionally, a single underlying responsive system across all platforms allow for a more unified user experience.</p> 
      </div> 
      </div> 
      <div class="col s12 m4"> 
      <div class="icon-block"> 
       <h2 class="center brown-text"><i class="material-icons">settings</i></h2> 
       <h5 class="center">Easy to work with</h5> 
       <p class="light">We have provided detailed documentation as well as specific code examples to help new users get started. We are also always open to feedback and can answer any questions a user may have about Materialize.</p> 
      </div> 
      </div> 
     </div> 
     </div> 
    </div> 
    <div class="parallax-container valign-wrapper"> 
     <div class="section no-pad-bot"> 
     <div class="container"> 
      <div class="row center"> 
      <h5 class="header col s12 light">A modern responsive front-end framework based on Material Design</h5> 
      </div> 
     </div> 
     </div> 
     <div class="parallax"><img src="background2.jpg" alt="Unsplashed background img 2"></div> 
    </div> 
    <div class="container"> 
     <div class="section"> 
     <div class="row"> 
      <div class="col s12 center"> 
      <h3><i class="mdi-content-send brown-text"></i></h3> 
      <h4>Contact Us</h4> 
      <p class="left-align light">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam scelerisque id nunc nec volutpat. Etiam pellentesque tristique arcu, non consequat magna fermentum ac. Cras ut ultricies eros. Maecenas eros justo, ullamcorper a sapien id, viverra ultrices eros. Morbi sem neque, posuere et pretium eget, bibendum sollicitudin lacus. Aliquam eleifend sollicitudin diam, eu mattis nisl maximus sed. Nulla imperdiet semper molestie. Morbi massa odio, condimentum sed ipsum ac, gravida ultrices erat. Nullam eget dignissim mauris, non tristique erat. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae;</p> 
      </div> 
     </div> 
     </div> 
    </div> 
    <div class="parallax-container valign-wrapper"> 
     <div class="section no-pad-bot"> 
     <div class="container"> 
      <div class="row center"> 
      <h5 class="header col s12 light">A modern responsive front-end framework based on Material Design</h5> 
      </div> 
     </div> 
     </div> 
     <div class="parallax"><img src="http://materializecss.com/templates/parallax-template/background3.jpg" alt="Unsplashed background img 3"></div> 
    </div> 
    ` 
}) 

export class AppComponent {} 

正如你可能已經注意到了,在我的模板中的第一行是一個圖像標記。此圖片標籤正常工作。

但是,視差容器內的其他圖像標籤無法正常工作,並且它們是否在本地存儲或外部資源無關緊要。

在我的index.html文件我有以下代碼:

<!DOCTYPE html> 
<html> 
    <head> 
    <title>Angular QuickStart</title> 
    <meta charset="UTF-8"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <link rel="stylesheet" href="styles.css"> 

    <!-- Polyfill(s) for older browsers --> 
    <script src="node_modules/core-js/client/shim.min.js"></script> 

    <script src="node_modules/zone.js/dist/zone.js"></script> 
    <script src="node_modules/reflect-metadata/Reflect.js"></script> 
    <script src="node_modules/systemjs/dist/system.src.js"></script> 

    <script src="systemjs.config.js"></script> 
    <script> 
     System.import('app').catch(function(err){ console.error(err); }); 
    </script> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> 
    <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> 
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.8/css/materialize.min.css"> 
    </head> 

    <body> 
    <nav class="blue darken-4" role="navigation"> 
     <div class="nav-wrapper container light"><a id="logo-container" href="/" class="brand-logo">My App</a> 
     <ul class="right hide-on-med-and-down"> 
      <li><a href="#">Navbar Link</a></li> 
     </ul> 
     <ul id="nav-mobile" class="side-nav"> 
      <li><a href="#">Navbar Link</a></li> 
     </ul> 
     <a href="#" data-activates="nav-mobile" class="button-collapse"><i class="material-icons">menu</i></a> 
     </div> 
    </nav> 
    <my-app>Loading AppComponent content here ...</my-app> 
    <footer class="page-footer blue darken-4"> 
     <div class="footer-copyright"> 
     <div class="container"> 
      Made by Materialize 
     </div> 
     </div> 
    </footer> 
    <script src="https://code.jquery.com/jquery-2.1.1.min.js"></script> 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.8/js/materialize.min.js"></script> 
    <script src="assets/main.js"></script> 
    </body> 
</html> 

在這裏,除了包括實現,jQuery和Angular2的東西,我已經包含了兩個文件:styles.css的和main.js.

styles.css包含視差模板的CSS。並且下面的代碼屬於main.js

(function($){ 
    $(function(){ 

    $('.button-collapse').sideNav(); 
    $('.parallax').parallax(); 

    }); // end of document ready 
})(jQuery); // end of jQuery name space 

我看不到任何理由讓我的代碼不工作,但它不是。我哪裏錯了?

在Chrome中檢查我的應用程序時,我發現圖像被發現沒有404錯誤。該應用程序似乎並沒有顯示它們。

回答

0

對於paralax使用此代碼:

<div class="parallax-container"> 
    <div class="parallax" materialize="parallax"><img src="http://materializecss.com/images/parallax1.jpg"></div> 
</div> 
<div class="section white"> 
    <div class="row container"> 
    <h2 class="header">Parallax</h2> 
    <p class="grey-text text-darken-3 lighten-3">Parallax is an effect where the background content or image in this case, is moved at a different speed than the foreground content while scrolling.</p> 
    </div> 
</div> 
<div class="parallax-container"> 
    <div class="parallax" materialize="parallax"><img src="http://materializecss.com/images/parallax2.jpg"></div> 
</div> 

對於Sidnav使用此代碼

<nav role="navigation"> 
     <div class="nav-wrapper container"> 
     <a id="logo-container" href="#" class="brand-logo">Logo</a> 
     <ul class="right hide-on-med-and-down"> 
      <li><a href="#">Navbar Link</a></li> 
     </ul> 

     <ul id="nav-mobile" class="side-nav" > 
      <li><a href="#">Navbar Link</a></li> 
     </ul> 
     <a href="#" materialize="sideNav" data-activates="nav-mobile" class="button-collapse"><i class="material-icons">menu</i></a> 
     </div> 
    </nav> 
相關問題