찾다
웹 프론트엔드JS 튜토리얼Anglejs에서 페이지 적응을 구현하는 방법은 무엇입니까?

이 글에서는 주로 Anglejs 페이지의 적응형 높이 방법을 소개하고 참고하겠습니다.

Requirements

Angularjs로 구축된 비즈니스 시스템에서는 페이지 점프가 ui-view 라우팅을 통해 구현됩니다. 시스템을 초기화하고 진입한 후 오른쪽의 콘텐츠 영역이 브라우저 높이에 맞춰져야 합니다.

구현 계획

  1. ui-view가 위치한 p에 디렉티브를 추가하고, 디렉티브에서 element.css 초기화를 통해 p의 높이를 계산하고, p

  2. 디렉티브의 높이를 동적으로 업데이트합니다. $$watch) 각도 다이제스트 모니터링, 실시간으로 본체 높이 가져오기, 모델 또는 element.css 변경 사항을 동적으로 할당

옵션 1: 지시문 및 element.css 적응 높이 추가

1.

define([ "app" ], function(app) {
  app.directive('autoHeight',function ($window) {
    return {
      restrict : 'A',
      scope : {},
      link : function($scope, element, attrs) {
        var winowHeight = $window.innerHeight; //获取窗口高度
        var headerHeight = 80;
        var footerHeight = 20;
        element.css('min-height',
            (winowHeight - headerHeight - footerHeight) + 'px');
      }
    };
  });
  return app;
});

2.p 요소 추가 지시어

<p ui-view auto-height></p>

3. 효과 그림

원래 인터페이스: 오른쪽 영역의 높이는 적응형 콘텐츠이므로 아래 배경색은 검정색이 됩니다

조정 후: 영역의 높이 오른쪽 영역은 브라우저에 적응됩니다

해결 방법 2: $watch는 몸체의 높이를 모니터링하고 높이를 변경하는 값을 할당합니다

1 크기 조정 지시어를 만듭니다

var app = angular.module(&#39;miniapp&#39;, []);

function AppController($scope) {
  /* Logic goes here */
}

app.directive(&#39;resize&#39;, function ($window) {
  return function (scope, element) {
    var w = angular.element($window);
    scope.getWindowDimensions = function () {
      return { &#39;h&#39;: w.height(), &#39;w&#39;: w.width() };
    };
    scope.$watch(scope.getWindowDimensions, function (newValue, oldValue) {
      scope.windowHeight = newValue.h;
      scope.windowWidth = newValue.w;

      scope.style = function () {
        return { 
          &#39;height&#39;: (newValue.h - 100) + &#39;px&#39;,
          &#39;width&#39;: (newValue.w - 100) + &#39;px&#39; 
        };
      };

    }, true);

    w.bind(&#39;resize&#39;, function () {
      scope.$apply();
    });
  }
})

2.

<p ng-app="miniapp" ng-controller="AppController" ng-style="style()" resize>
  window.height: {{windowHeight}} <br />
  window.width: {{windowWidth}} <br />
</p>

p 요소에 대한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다.

관련 기사:

jquery+css3을 사용하여 Panda TV 탐색을 구현하는 방법

jQuery에서 시간 지정 숨기기 대화 상자를 구현하는 방법

vue-admin과 백엔드(flask)의 분리 및 조합에 대한 자세한 해석 )

Vue에서 배경 이미지 설정

vue + less를 사용해 간단한 스킨 변경 기능을 구현하는 방법

Angular, React, Vue를 사용해 동일한 면접 질문 컴포넌트를 구현하는 방법

위 내용은 Anglejs에서 페이지 적응을 구현하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
聊聊Angular中的元数据(Metadata)和装饰器(Decorator)聊聊Angular中的元数据(Metadata)和装饰器(Decorator)Feb 28, 2022 am 11:10 AM

本篇文章继续Angular的学习,带大家了解一下Angular中的元数据和装饰器,简单了解一下他们的用法,希望对大家有所帮助!

angular学习之详解状态管理器NgRxangular学习之详解状态管理器NgRxMay 25, 2022 am 11:01 AM

本篇文章带大家深入了解一下angular的状态管理器NgRx,介绍一下NgRx的使用方法,希望对大家有所帮助!

浅析angular中怎么使用monaco-editor浅析angular中怎么使用monaco-editorOct 17, 2022 pm 08:04 PM

angular中怎么使用monaco-editor?下面本篇文章记录下最近的一次业务中用到的 monaco-editor 在 angular 中的使用,希望对大家有所帮助!

Angular + NG-ZORRO快速开发一个后台系统Angular + NG-ZORRO快速开发一个后台系统Apr 21, 2022 am 10:45 AM

本篇文章给大家分享一个Angular实战,了解一下angualr 结合 ng-zorro 如何快速开发一个后台系统,希望对大家有所帮助!

项目过大怎么办?如何合理拆分Angular项目?项目过大怎么办?如何合理拆分Angular项目?Jul 26, 2022 pm 07:18 PM

Angular项目过大,怎么合理拆分它?下面本篇文章给大家介绍一下合理拆分Angular项目的方法,希望对大家有所帮助!

聊聊自定义angular-datetime-picker格式的方法聊聊自定义angular-datetime-picker格式的方法Sep 08, 2022 pm 08:29 PM

怎么自定义angular-datetime-picker格式?下面本篇文章聊聊自定义格式的方法,希望对大家有所帮助!

浅析Angular中的独立组件,看看怎么使用浅析Angular中的独立组件,看看怎么使用Jun 23, 2022 pm 03:49 PM

本篇文章带大家了解一下Angular中的独立组件,看看怎么在Angular中创建一个独立组件,怎么在独立组件中导入已有的模块,希望对大家有所帮助!

聊聊Angular Route中怎么提前获取数据聊聊Angular Route中怎么提前获取数据Jul 13, 2022 pm 08:00 PM

Angular Route中怎么提前获取数据?下面本篇文章给大家介绍一下从 Angular Route 中提前获取数据的方法,希望对大家有所帮助!

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기