[email protected]较复杂的指令嵌套demo——综合小实例:登陆界面

1、index.html:

<!DOCTYPE HTML>
<html ng-app="app">
<head>
    <title>custom-directive</title>
    <meta charset="utf-8">    
    <link rel="stylesheet" href="../css/bootstrap.css">
    <script src="../js/angular.js"></script>
    <style>
    .wrapper{
        border-radius:6px;
        width:500px;
        height:auto;
        background:#f2f2f2;
        padding:50px 40px 30px 40px;
        margin:0 auto;
        margin-top:120px;
        box-shadow:0 0 6px #333;
    }
    .btn_diff{
        width:100px;
        margin-right:15px;
        position:relative;
        left:160px;
    }
    </style>
</head>
<body>
<!-- 下面是带嵌套的自定义指令demo. -->
<div class="wrapper">
    <form class="form-horizontal" role="form">
        <control>用户名:</control>
        <br>    
        <controlpwd>密码:</controlpwd>
        <br>    
        <controlbtn>登录</controlbtn>
        <controlbtn>取消</controlbtn>
    </form>
</div>
<script src="./directive-form.js"></script>
</body>
</html>

2、directive-form.js:

var myModule = angular.module("app",[]);
myModule.directive(‘control‘,function(){//自定义可复用B3风格文本输入框
    return {
        restrict:‘AE‘,
        replace:true,
        transclude:true,
        scope:{},
        link:function(scope,element,attrs){

},
        template:‘<div class="form-group"><label class="col-md-2 control-label"><span ng-transclude></span></label><div class="col-md-10"><input class="form-control" type="text" placeholder="请输入用户名..."></div></div>‘
    }
}).directive(‘controlpwd‘,function(){//自定义可复用B3风格密码输入框
    return {
        restrict:‘AE‘,
        replace:true,
        transclude:true,
        scope:{},
        link:function(scope,element,attrs){

},
        template:‘<div class="form-group"><label class="col-md-2 control-label"><span ng-transclude></span></label><div class="col-md-10"><input class="form-control" type="password" placeholder="请输入密码..."></div></div>‘
    }
}).directive(‘controlbtn‘,function(){//自定义可复用B3风格按钮
    return {
        restrict:‘AE‘,
        replace:true,
        transclude:true,
        template:‘<button class="btn btn-default btn_diff"><span ng-transclude></span></button>‘
    }
});

时间: 2024-10-22 12:39:55

[email protected]较复杂的指令嵌套demo——综合小实例:登陆界面的相关文章

[email&#160;protected]计划宣传片 XboxOne喜迎大波小游戏(转)

微软Xbox One游戏不够多?别担心,微软的[email protected]计划将带来一大波独立游戏!微软在今天正式公布了即将登陆旗下的Xbox One主机平台的独立游戏阵容,数量多达32款,官方的宣传片也已放出,感兴趣的玩家一起来看看吧! 高清视频截图:

[email&#160;protected]一个简单的UI-Router路由demo

1.index.html: <!DOCTYPE HTML><html ng-app="routerApp"><head>    <title>UI-Router路由demo</title>    <meta charset="utf-8">        <link rel="stylesheet" href="../framework/bootstrap-3

[email&#160;protected]综合小实例1

<!DOCTYPE HTML><html ng-app="myapp"><head> <title>综合小实例</title> <meta charset="utf-8">  <link rel="stylesheet" href="../css/bootstrap.css"> <script src="../js/angula

浅谈linux中shell变量$#,[email&#160;protected],$0,$1,$2,$?的含义解释

浅谈linux中shell变量$#,[email protected],$0,$1,$2,$?的含义解释 下面小编就为大家带来一篇浅谈linux中shell变量$#,[email protected],$0,$1,$2的含义解释.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 摘抄自:ABS_GUIDE 下载地址:http://www.tldp.org/LDP/abs/abs-guide.pdf linux中shell变量$#,[email protected],$

iOS开发核心语言Objetive C —— 编译器指令@[email&#160;protected]自定义构造方法及类工厂

本分享是面向有意向从事iOS开发的伙伴们,或者已经从事了iOS的开发者.如果您对iOS开发有极高的兴趣,可以与我一起探讨iOS开发,一起学习,共同进步.如果您是零基础,建议您先翻阅我之前分享的iOS开发分分钟搞定C语言系列,然后在开始Objective C语言的学习,如果您遇到问题也可以与我探讨,另外将无偿分享自己整理的大概400G iOS学习视频及学习资料,都是干货哦!可以新浪微博私信?关注极客James,期待与您的共同学习和探讨!!由于时间有限,每天在工作之余整理的学习分享,难免有不足之处,

访问mysql出现“Access denied for user [email&#160;protected]”(using password:NO)解决方案

首先声明,出现这个提示的原因有很多,以下只针对我遇到的一种情况 使用解压缩版安装mysql的时候,data文件夹是自己新建的,my-default.ini也是自己配置的,这时直接启动mysql服务的时候,会出现提示 "MySQL正在启动""MySQL无法启动"的情况,原因是data文件夹是空的,需要初始化一些东西进去 于是使用了mysqld --initialize命令 蛋疼的是,这个命令会默认给root用户设置一个随机密码,导致使用mysql -uroot指令无法

[email&#160;protected]和@synthesize

@porperty @porperty是一个编译器指令 在Xocde4.4之前, 可以使用@porperty来代替getter/setter方法的声明, 也就是说我们只需要写上@porperty就不用写getter/setter方法的声明 2.编译器只要看到@property,就知道我们要生成某一个属性的getter/setter方法的声明 @propertyde格式 @property数据类型变量名 property增强 从Xcode4.4以后,对@property进行了增强, 以后只要利用一

Failed at the [email&#160;protected] preinstall script &#39;./scripts/download&#39; 设置linux proxy (代理)的方式

此问题发生的条件是: 用bitcore官方提供的方式在linux进行npm安装,报错: Downloading bitcoin: https://github.com/bitpay/bitcoin/releases/download/v0.12.1-bitcore-4/npm ERR! Linux 3.16.0-4-686-paenpm ERR! argv "/home/user/.nvm/versions/node/v4.6.0/bin/node" "/home/user/

“makefile”写法详解,一步一步写一个实用的makefile,详解 sed &#39;s,$?\.o[ :]*,\1.o [email&#160;protected] : ,g&#39; &lt; [email&#160;protected]

目的:编写一个实用的makefile,能自动编译当前目录下所有.c/.cpp源文件,支持二者混合编译.并且当某个.c/.cpp..h或依赖的源文件被修改后,仅重编涉及到的源文件,未涉及的不编译. 二要达到这个目的,用到的技术有:1-使用wildcard函数来获得当前目录下所有.c/.cpp文件的列表.2-make的多目标规则.3-make的模式规则.4-用gcc -MM命令得到一个.c/.cpp文件include了哪些文件.5-用sed命令对gcc -MM命令的结果作修改.6-用include命