首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何找到css类并将其添加到div的一个子级?

如何找到css类并将其添加到div的一个子级?
EN

Stack Overflow用户
提问于 2016-08-12 17:10:37
回答 1查看 51关注 0票数 1
代码语言:javascript
复制
<div class="post-content-container">
  <div class="post-content">
    Some very long text
  </div>
  <button (click)="showMore($event)">Show more</button>
</div>

<div class="post-content-container">
  <div class="post-content">
    Some very long text
  </div>
  <button (click)="showMore($event)">Show more</button>
</div>

<div class="post-content-container">
  <div class="post-content">
    Some very long text
  </div>
  <button (click)="showMore($event)">Show more</button>
</div>

我想在单击按钮后向post-content添加一个类。嗯,首先我得找个家长,对吧?然后,我想找到其中一个子类,并在其中添加自定义css类。

代码语言:javascript
复制
showMore(event: any) {
  let parent = event.target.parentNode; <-- post-content-container
  //now, how to get into parent's child (I mean post-content) and add to it some custom css class?
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-08-12 17:29:32

你用的是Angular2对吗?没有必要像您在JavaScript中那样做任何自定义的jQuery。下面是如何通过切换组件中的"myClass“值来添加类"showMyClass”,其中"showMyClass“属性是一个布尔值。或者让"showMyClass“成为一组布尔人。下面是一个完整的工作示例:

代码语言:javascript
复制
import { Component, NgModule } from '@angular/core'
import { BrowserModule } from '@angular/platform-browser'
import { FormsModule }   from '@angular/forms';

@Component({
  selector: 'my-app',
  template:`
    <div class="post-content-container">
        <div class="post-content" [ngClass]="{myClass: showMyClass[0]}">
        Some very long text 1
        {{showMyClass[0]}}
        </div>
        <button (click)="showMore(0, $event)">Show more</button>
    </div>

    <div class="post-content-container">
        <div class="post-content" [ngClass]="{myClass: showMyClass[1]}">
        Some very long text 2
        {{showMyClass[1]}}
        </div>
        <button (click)="showMore(1, $event)">Show more</button>
    </div>
  `
})
export class App {
    public showMyClass: Array<boolean>;

    constructor(){
      this.showMyClass = [];
    }

    showMore(index, event: any) {
      this.showMyClass[index] = !this.showMyClass[index];
    }
 }


@NgModule({
  imports: [ BrowserModule, FormsModule ],
  declarations: [ App ],
  bootstrap: [ App ]
})
export class AppModule {}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38923233

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档