需求说明:

  获取当前节点左节点或者右节点(兄弟节点);

css:

<style type="text/css">
a:focus { outline: none; }
.panel { background: #69C7F7; height: 220px; display: none; }
.slide { margin: 0; padding: 0; border-top: solid 4px #F27613; }
.btn-slide { background: #F27613 url(http://www.goartie.com/images/jstx/white-arrow.gif) no-repeat center -60px; text-align: center; width: 144px; height: 4px; padding: 10px 10px 0 0; margin: 0 auto; display: block;color: #fff; text-decoration: none; }
.active { background-position: center 0px; }
</style>

javascript:

 $(document).ready(function () {
$("#IsOnloadInfo").click();
$(".btn-slide").click(function () {
$(this).parent().prev().slideToggle("slow");
$(this).toggleClass("active"); return false;
}); }); function fundisp(par) {
$(par).next().slideToggle("slow");
$(par).next().next().find('a').toggleClass("active");
}

Body:

 <span class="examine_des">
<input style="border: 0" type="button" value="点击详情" onclick="fundisp(this)"/>
<div class="examine_des panel">
<ul style="list-style:none">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
<p class="slide"><a href="javascript:;" class="btn-slide active"></a></p>
</span>

上面是相关页面的代码段;

  大家,这里需要注意两处:

  1、Body 的 <input>标签注册了onclick方法,但这个方法,传入了一个参数;

  这里的 “this”表示当前组件的DOM对象:

  若将onclick修改成

 <input style="border: 0" type="button" value="点击详情" onclick="fundisp()"/>

  js中修改成:  

 function fundisp() {
$(this).next().slideToggle("slow");
$(this).next().next().find('a').toggleClass("active");
}

  那这里,明确的告诉大家,js中的代码不能执行,因为,找不到DOM对象,

  当然,有人会说,可以用   “window.event.srcElement” 来代替$(this), 这样完全可以;

  因为 window.event.srcElement   是指触发事件的对象,当input触发onclick事件,event.srcElement就会指向触发事件的元素<input>

  2、js 的 fundisp() 方法中 参数的使用;

  “var” 足够你在js中声明变量类型,javascript方法的参数不需要声明类型,因为,你传什么类型,方法的接受参数就是什么类型;

  所以在当前实例中,方法onclick传入this代表DOM对象,那么 ,js中的参数,就可以按照DOM的使用方法去使用。

  3、利用 选择器 注册方法中的 this

 $(document).ready(function () {
$("#IsOnloadInfo").click();
$(".btn-slide").click(function () {
$(this).parent().prev().slideToggle("slow");
$(this).toggleClass("active"); return false;
}); });

  这里 的this 就表示当前 通过选择器,过滤的DOM对象。

  

javascript获取dom的下一个节点方法的更多相关文章

  1. javascript 获取下一个节点

    下一个节点: nextElementSibling 上一个节点 previousElementSibling <div> <select onchange="alert(t ...

  2. javascript 获取dom书的下一个节点。

    利用javascript 写一个在页面点击加减按钮实现数字的累加.. 简略的html大概如此.看得懂就好不要在意这些细节啊 <input type="button" valu ...

  3. JavaScript与DOM(下)

    介绍 上一章我们介绍了JavaScript的基本内容和DOM对象的各个方面,包括如何访问node节点.本章我们将讲解如何通过DOM操作元素并且讨论浏览器事件模型. 本文参考:http://net.tu ...

  4. 深入理解JavaScript系列(24):JavaScript与DOM(下)

    介绍 上一章我们介绍了JavaScript的基本内容和DOM对象的各个方面,包括如何访问node节点.本章我们将讲解如何通过DOM操作元素并且讨论浏览器事件模型. 本文参考:http://net.tu ...

  5. JavaScript的DOM编程--11--插入节点

    插入节点: 1). insertBefore(): 把一个给定节点插入到一个给定元素节点的给定子节点的前面 var reference = element.insertBefore(newNode,t ...

  6. JS获取DOM元素的八种方法

    JS获取DOM元素的方法(8种) 通过ID获取(getElementById) 通过name属性(getElementsByName) 通过标签名(getElementsByTagName) 通过类名 ...

  7. 剑指offer25:复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),结果返回复制后复杂链表的head。

    1 题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head.(注意,输出结果中请不要返回参数中的节点引用 ...

  8. JavaScript获取数组最小值和最大值的方法

    本文实例讲述了JavaScript获取数组最小值和最大值的方法.分享给大家供大家参考.具体如下: ? 1 2 3 4 5 6 var arr = new Array(); arr[0] = 100; ...

  9. 剑指offer-二叉树的下一个节点

    题目描述   给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回.注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针.   解题思路 分情况考虑如下: 若该节点为空,则直 ...

随机推荐

  1. Idrac6 to manage dell server

    最近idrac6挂了,java已经升级了 1.安装firefox浏览器,只有火狐是支持idrac最好的 2.安装JDK 3.配置configure java, 4.添加security,edit si ...

  2. FreeMarker + xml 导出word

    转载自:http://hongqiang.iteye.com/blog/1632998 首先介绍几种java导出word方案 1.Jacob是Java-COM Bridge的缩写,它在Java与微软的 ...

  3. 最新eclipse安装SVN插件

    转载自:http://welcome66.iteye.com/blog/1845176 eclipse里安装SVN插件,一般来说,有两种方式: 直接下载SVN插件,将其解压到eclipse的对应目录里 ...

  4. Android之实现定位

    基于android的定位无非就两种:network.gps.两者各有优劣. Network:定位快,准确度低,受环境影响小. GPS:定位慢,准确度高,受环境影响大. 本文要解决的问题: 1.     ...

  5. linux删除乱码

    一:前沿 好久没有记载东西了,回来之后一直忙着改东西,我走之前项目是什么样,回来后也差不多.郁闷啊,努力敲代码,但是要敲出思想来啊.先会做,然后深入思考 二:内容 (1)每次使用rz命令向服务器上传代 ...

  6. Epoll模型讲解

    1.流模型 首先我们来定义流的概念,一个流可以是文件,socket,pipe等等可以进行I/O操作的内核对象. 不管是文件,还是套接字,还是管道,我们都可以把他们看作流. 之后我们来讨论I/O的操作, ...

  7. Java面试总结mysql

    1.根据部门号从高到低,工资从低到高列出每个员工的信息. SELECT * FROM  User ORDER BY deptid DESC ,salary 2.用一条sql语句查询出每门课都大于80的 ...

  8. 2016多校第4场 HDU 6076 Security Check DP,思维

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6076 题意:现要检查两条队伍,有两种方式,一种是从两条队伍中任选一条检查一个人,第二种是在每条队伍中同 ...

  9. iOS一个项目开始创建, 部署到git服务器

    在做iOS开发时, 最开始可能你的经理部署项目, 所以你不会插手, 只是直接从git上clone下来然后就开始撸码, 如果有一天你做经理了, 你怎么去部署一个项目呢, 下面我来过一遍流程 1. 首先需 ...

  10. A Tutorial on Network Embeddings

    A Tutorial on Network Embeddings paper:https://arxiv.org/abs/1808.02590   NE 的中心思想就是找到一种映射函数,该函数将网络中 ...