zoukankan      html  css  js  c++  java
  • 指令

    var appModule = angular.module('app', []);    appModule.directive('hello', function() 
    {
        return {        
                restrict: 'E',        
                template: '<div>Hi there <span ng-transclude></span>  </div>',        
                transclude: true    };
    });            
    <body>
            <hello>
                <br/>
                <span>原始的内容,</span><br/>
                <span>还会在这里。</span>
            </hello>
            <hello>
            </hello>
        </body>

    transclude(变换)

    指令的作用是把我们自定义的语义化标签替换成浏览器能够认识的HTML标签。那好,如果我们自定义的标签内部出现了子标签,应该如何去处理呢?很显然,transclude就是用来处理这种情况的。

      

    对于当前这个例子,transclude的作用可以简化地理解成:把<hello>标签替换成我们所编写的HTML模板,但是<hello>标签内部的内容保持不变

    很显然,由于我们没有加replace:true选项,所以<hello>标签还在,没有被替换掉。同时,通过这个例子你还还会发现一 个暗藏的属性,那就是浏览器实际上非常智能,虽然它并不认识<hello>这个标签,但是页面没有出错,它只是默默地把这个标签忽略掉了!怎 么样?是不是碉堡了?

    你可以自己在上面的JS代码里面加上replace:true,然后再看生成的HTML结构。

    最痛苦时候不要忘记信仰,最幸福时候不要忘记坎坷!
  • 相关阅读:
    MM1排队系统
    java基本概念
    将博客搬至CSDN
    数据库知识点1
    离散分布
    概率论1--基本概念
    一道经典JS题(关于this)
    ajax请求过程中下载文件在火狐下的兼容问题
    熟悉css/css3颜色属性
    打字机游戏Ⅱ之手速pk
  • 原文地址:https://www.cnblogs.com/oneMTime/p/5379483.html
Copyright © 2011-2022 走看看