• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >AngularJS > AngularJS中directive指令使用之事件绑定与指令交互用法示例

AngularJS中directive指令使用之事件绑定与指令交互用法示例

作者:栁罗风尘 字体:[增加 减小] 来源:互联网 时间:2017-05-30

本文主要包含angularjs中directive,angularjs directive,directive指令,directive,directive是什么意思等相关知识,栁罗风尘 希望在学习及工作中可以帮助到您

本文实例讲述了AngularJS中directive指令使用之事件绑定与指令交互用法。分享给大家供大家参考,具体如下:

AngularJS中模板的使用,事件绑定以及指令与指令之间的交互

<!doctype html>
<html ng-app="myapp">
  <head>
    <meta charset="utf-8"/>
  </head>
  <body ng-controller="ShieldController">
    <div>
      <who></who>
    </div>
    <div>
      <button you-btn></button>
    </div>
    <theshield reigns>343</theshield>
    <theshield reigns>fdhg</theshield>
    <theshield rollins>hhh</theshield>
    <theshield ambros>kkk</theshield>
  </body>
  <script src="./js/angular.min.js"></script>
  <script>
    var app = angular.module('myapp',[]);
    /*=======================1. 模板的使用 ========================*/
    app.directive('who',function(){
      return {
        restrict:"E",       //元素element 的意思
        link:function(scope,element,attrs){
          console.log(element);
          element[0].innerHTML = 'sdfhkj'; //这个优先级别最高
        },
        //templateUrl:"param.html", //这个不显示 优先级别最低
        template:"<h1>jkdhf</h1>" //这个显示 优先级别其次
      };
    });
    /*=======================2. 事件的绑定 ========================*/
    app.directive('youBtn',function(){
      return {
        restrict:"A", //attribute 属性的意思
        link:function(scope,element,attrs){
          console.log(element);
          element[0].innerHTML = 'my btn';
          //事件绑定
          element.bind('mouseenter',function(){
            element[0].innerHTML = 'your btn';
          });
          element.bind('mouseleave',function(){
            element[0].innerHTML = 'her btn';
          });
        }
      };
    });
    /*=======================3. 元素 属性 控制器之间的交互========================*/
    app.controller('ShieldController',function($scope){
      $scope.shieldNames = [];
      this.addReigns = function(){
        $scope.shieldNames.push("reigns:jjj");
      }
      this.addRollins = function(){
        $scope.shieldNames.push("Rollins:hhh");
      }
      this.addAmbros = function(){
        $scope.shieldNames.push("Ambros:ggg");
      }
    })
    .directive('reigns',function(){
     return {
       require:"theshield",
       link:function(scope,element,attrs,ShieldController){
         ShieldController.addReigns();
       }
     };
    })
    .directive('rollins',function(){
     return {
       require:"theshield",
       link:function(scope,element,attrs,ShieldController){
         ShieldController.addRollins();
       }
     };
    })
    .directive('ambros',function(){
     return {
       require:"theshield",
       link:function(scope,element,attrs,ShieldController){
         ShieldController.addAmbros();
       }
     };
    })
    .directive('theshield',function(){
      return {
        restrict:"E",
        controller:"ShieldController", //指定控制器
        scope:{},           //清空该指令处的$scope 值
        link:function(scope,element,attrs){
          element.bind('mouseenter',function(){ //对于该指令所对应的元素绑定对应的事件
            console.log(scope.shieldNames);
          });
        }
      };
    });
  </script>
</html>
</div>

希望本文所述对大家AngularJS程序设计有所帮助。

</div>

您可能想查找下面的文章:

  • angularjs中ng-bind-html的用法总结
  • angularjs使用directive实现分页组件的示例
  • 详解angularJs中自定义directive的数据交互
  • angularjs中ng-attr的用法详解
  • AngularJS中directive指令使用之事件绑定与指令交互用法示例
  • AngularJs directive详解及示例代码
  • Angularjs使用directive自定义指令实现attribute继承的方法详解

相关文章

  • 2017-05-30Angularjs中三种数据的绑定策略(“@”,“=”,“&”)
  • 2017-05-30AngularJs定制样式插入到ueditor中的问题小结
  • 2017-05-30angularjs封装bootstrap时间插件datetimepicker
  • 2017-05-30AngularJs动态加载模块和依赖注入详解
  • 2017-05-30AngularJS基础 ng-mousemove 指令简单示例
  • 2017-05-30Angular在一个页面中使用两个ng-app的方法
  • 2017-05-30angular实现IM聊天图片发送实例
  • 2017-05-30Angular组件化管理实现方法分析
  • 2017-05-30AngularJS $modal弹出框实例代码
  • 2017-05-30angular.js指令中的controller、compile与link函数的不同之处

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • angular-ui-sortable实现可拖拽排序列表
    • Angular实现一个简单的多选复选框的弹出框指令实例
    • AngularJs Modules详解及示例代码
    • AngularJS 使用$sce控制代码安全检查
    • AngularJS中的promise用法分析
    • 详谈angularjs中路由页面强制更新的问题
    • angular.js分页代码的实例
    • AngularJs 常用的过滤器
    • Angular2中如何使用ngx-translate进行国际化
    • Angularjs中的ui-bootstrap的使用教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有