angular.module("APP",[])
.directive("testDw",function () {
return{
restrict:"E",
scope:"=",
template: "<div class='a'><div class='b'> 123344</div></div>",
link:function (scope,element,attrs) {
console.log(element.length); //1
console.log(element); //2
console.log(element[0]); //3
console.log(element[0].firstChild); //4
console.log(element.children("div")); //5
console.log(element.children("div")[0]); //6
console.log(element[0].getElementsByClassName("a")); //7
element[0].getElementsByClassName("a")[0].style.backgroundColor="black";
element[0].firstChild.style.backgroundColor="red";
}
}
});

以上为指令中的代码

<!DOCTYPE html>
<html lang="en" ng-app="APP">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body > <div><test-dw></test-dw></div>
<script type="text/javascript" src="angular.min.js"></script>
<script type="text/javascript" src="app3.js"></script>
</body>
</html>

以上为html的代码

结果:

1.结果是 length=1,可以看出element是一个有部分jquery dom对象属性的dom对象,且有数据特性;

2.从结果可以看出指向的是[test-dw],从图中可以看出element[0]=<test-dw>,length=1,_proto_为对象的内部原型(每个对象都会在其内部初始化一个属性,就是_proto_)

3.从结果可以看出 element[0]=<test-dw>

4.element[0].firstchild 为div块

5.element[0].children("div")不是一个div的具体块,它也和element一样是一个具有一个部分jquery dom对象属性的dom对象,且具有数据特性

6.element[0].children("div")[0]这个才是到了具体的div块 (它和element[0].firstchild一样,可以对比下)

7.注意:结果和5不一样,7是用原生的js写的,所以内部原型不同。

angularjs1.x的directive中的link参数element见解的更多相关文章

  1. AngularJS自定义Directive中link和controller的区别

    在AngularJS中,自定义Directive过程中,有时用link和controller都能实现相同的功能.那么,两者有什么区别呢? 使用link函数的Directive 页面大致是: <b ...

  2. AngularJS in Action读书笔记5(实战篇)——在directive中引入D3饼状图显示

    前言: "宁肯像种子一样等待  也不愿像疲惫的陀螺  旋转得那样勉强" 这是前几天在查资料无意间看到的一位园友的签名,看完后又读了两遍,觉得很有味道.后来一寻根究底才知这是出资大诗 ...

  3. AngularJs中,如何在父元素中调用子元素为自定义Directive中定义的函数?

    最近一段时间准备使用AngularJs中的自定义Directive重构一下代码. 在这里说明一下,把自定义控件封装成Directive并不一定是要复用,而是要让代码结构更加清晰.就好像你将一个长方法拆 ...

  4. angularjs如何在视图渲染结束之后,或者render之后执行指令中的link方法呢?

    angularjs如何在视图渲染结束之后,或者render之后执行指令中的link方法 关键字: $timeout app.directive("myDirective",func ...

  5. 如何将C++中的SOCKADDR_IN*参数类型转换成C#中的参数类型

    将C++中的参数类型SOCKADDR_IN*映射为C#中的IntPtr参数类型的示例代码如下: IntPtr ptrSockaddr = new IntPtr(); //ip地址 sockaddr_i ...

  6. angular 中 directive中的多个指令

    <div ng-controller="ctrl1"> <superman weight length speed>superman</superma ...

  7. AngularJS的指令(Directive) compile和link的区别及使用示例

    如果我想实现这样一个功能,当一个input失去光标焦点时(blur),执行一些语句,比如当输入用户名后,向后台发ajax请求查询用户名是否已经存在,好有及时的页面相应. 输入 camnpr 失去焦点后 ...

  8. 控制器controller与指令中的link、controller中变量作用域的关系

    angjualrjs中的作用域与原生js中的函数嵌套原理一致,都是存在作用域的继承.若在子控制器(同样包括在指令中的link或是controllerding中定义变量,此时指令中必须未使用scope独 ...

  9. react-router V4中的url参数

    概述 之前写过react在router中传递数据的2种方法,但是有些细节没有理清楚,现在补上,记录下来,供以后开发时参考,相信对其他人也有用. 参考资料:stackoverflow react rou ...

随机推荐

  1. 集合总结二(LinkedList的实现原理)

    一.概述 先来看看源码中的这一段注释,我们先尝试从中提取一些信息: Doubly-linked list implementation of the List and Deque interfaces ...

  2. 【剑指offer】数组中只出现一次的数字

    题目:一个整型数组里除了两个数字之外,其他的数字都出现了偶数次.请写程序找出这两个只出现一次的数字. 思路1:使用HashMap存上所有的数字,数字作为Key,Value为对应的出现次数.这种做法可以 ...

  3. problem:浏览器如何区分html超文本和普通文本

    运营同学问:后端返回的一串元素标签,我想在网页中显示的时候,将标签中的内容渲染出来,不希望直接显示标签. 回答:bootstrap加模版组织的网页,模版渲染的数据只能渲染字符串,不能转化富文本. 运营 ...

  4. Scrapy学习篇(十三)之scrapy+selenum获取网站cookie并保存带本地

    参考:https://www.cnblogs.com/small-bud/p/9064674.html 和selenium登录51job的例子

  5. hash的排序(转载)

    sort函数 sort LISTsort BLOCK LISTsort SUBNAME LIST sort 的用法有如上3种形式.它对LIST进行排序,并返回排序后的列表.假如忽略了SUBNAME或B ...

  6. startup.bat 一闪而过解决方案

    原文地址:http://blog.csdn.net/stypace/article/details/38083581 启动tomcat时cmd窗口一闪而过解决方法. 注: 我这边只是配置了环境变量就o ...

  7. python-web自动化-元素定位

    # -*- coding:utf-8 -*- from selenium import webdriver from selenium.webdriver.common.by import By # ...

  8. android 开发 View _12_ 用Canvas 绘制一张图片(博客中演示用Canvas画验证码图片)

    package net.yt.yuncare.widgets; import android.graphics.Bitmap; import android.graphics.Canvas; impo ...

  9. 微信小程序版本管理

    备忘录:<需要修改完善> 打开小程序开发者工具,点击版本管理,点击设置 , 通用更改码云的名字和邮箱 网络认证选择用户名和密码 把密码输入了,点击远程 添加 输入码云的https地址 和仓 ...

  10. 【亲测】解决虚拟机CentOS7联网ping不通相关问题(通俗易懂)

    对于是使用windows操作系统的小伙伴来说(mac用户忽略),要学习一些技术可能需要使用Linux系统,自然就需要使用虚拟机安装Linux,当然现在很多主流的学习网站上的教程都会提供老师配置好的虚拟 ...