操作dom_【Angular】DOM操作

648827985243357115ebcbf488a15061.gif

原生js的操作示例

app.component.html

<h1>
  
  {{ msg }}
h1>
<h2>DOM操作演示h2>
<div id="box">
        this is box
div>
<br>
<div id="box1" *ngIf="flag">
    this is box1
div>
<router-outlet>router-outlet>

app.component.ts

import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, FormArray, FormControl } from '@angular/forms';
@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss']
})
export class AppComponent implements OnInit {

  msg = "码上加油站"
  public flag: boolean = true;
  constructor() {

  };

  ngOnInit(): void {
    //组件和指令初始化完成 并不是真正的dom加载完成
    let oBox: any = document.getElementById('box');
    console.log(oBox.innerHTML);
    oBox.style.color = "red";


    //获取不到dom节点
    /*
     let oBox1:any=document.getElementById('box1');
     console.log(oBox1.innerHTML);
     oBox1.style.color="blue";
     */

  }
  //视图加载完成以后触发的方法 dom加载完成 (建议把dom操作放在这个里面)
  ngAfterViewInit() {
    let oBox1: any = document.getElementById('box1');
    console.log(oBox1.innerHTML);
    oBox1.style.color = "blue";

  }

}

效果:

a16d0f76d1db4e74a0be874ca3ecf14a.png

执行css的动画示例

app.component.html

<div >

  <h1>
    
    {{ msg }}
  h1>

  <div ><button (click)="showAnim()">执行动画button>div>

  <div id="div1" class="div1">div>

div>

<router-outlet>router-outlet>

app.component.ts

import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, FormArray, FormControl } from '@angular/forms';
@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.scss']
})
export class AppComponent implements OnInit {

  msg = "码上加油站"
  public flag: boolean = true;
  constructor() {

  };

  ngOnInit(): void {

  }
  
  ngAfterViewInit() {

  }
  showAnim() {
    //原生js获取dom节点
    console.log('showAnim')
    let oDiv: any = document.getElementById('div1');
    oDiv.style.transform = "translate(100%,0)";

  }


}

app.component.scss

.div1 {
  width: 100px;
  height: 100px;

  background: red;
  left: 50px;
  top: 50px;
}

效果:

8001c8d85644717f3b65e17b2666983e.gif

  码上加油站

  一起来加油

长按扫码关注

cab7043a24bc8cafe245f5f361bc71ed.png 记得点个 在看 哦!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值