html - 如何在单击按钮时应用显示和隐藏?

标签 html css angularjs

我想在单击按钮时执行显示和隐藏。我有以下代码。我想在单击按钮“Click”时在我的“maindiv”内容上显示或应用我的 css 样式(color:red)。 同样,如果我单击那个 Click 按钮,那么它应该像之前那样隐藏或显示它的正常内容(即没有任何红色的 css 样式),就像这样它应该出现。

Getting error: TypeError: Cannot read property 'classList' of null

Fiddle .

html:

<div ng-app="app">
    <div ng-controller="MainController">
    <div id="maindiv">
    <p>Test Content</p>
    </div>
       <div id="mainContainer">
          <div id="testId">
              <button type="button"  ng-click="testExpand()">Click</button>
          </div>
        </div>
  </div>
</div>

js:

angular.module('app', []).
controller('MainController', ['$scope', function ($scope) {
      $scope.testExpand = function(){
            alert("testExpand is called to show");
            document.querySelector("maindiv").classList.add("maindivColor");
        } 
}]);

最佳答案

试试angularjs的方式。

angular.module('app', []).
controller('MainController', ['$scope', function ($scope) {        
$scope.testExpand = function(){
			//alert("testExpand is called to show");
			$scope.applyCss = !$scope.applyCss;    		
		}
         }]);
.maindivColor {
  color:red;
}

.mainContainer {
  border-right: 1px solid #333;
}

#testId {
//  background-color: green;
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<div ng-app="app">
    <div ng-controller="MainController">
    <div ng-class="{'maindivColor':applyCss}"><p>Normal Content</p></div>
    <div ng-show="applyCss" ng-class="{'maindivColor':applyCss}">
    <p>
    Test Content
    </p>
    </div>
       <div>
         
              <button type="button"  ng-click="testExpand()">Click</button>
          
		</div>
  </div>
</div>

关于html - 如何在单击按钮时应用显示和隐藏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44132834/

相关文章:

javascript - 拆分按钮格式化取决于浏览器

css - 我在哪里更改 CSS 中当前菜单项的突出显示颜色?

css - style.css 不在 Wordpress 上更新

javascript - 将焦点设置在表行元素上

javascript - 使无框架的 React/Electron 应用程序标题栏在滚动期间不消失

css - 悬停时导航栏侧面的栏

jquery - 表格单元格中的 Kendo 验证显示在顶部(z-index)

angularjs - Angular JS 截断文本并添加阅读更多

javascript - 根据选中的复选框显示/隐藏部分

html - 为什么向 bootstrap 元素添加自定义类在 chrome 中不起作用,但在 edge 中却有效?