如何解决jQuery-按顺序动态链接元素
| 我有两个不同的类\“。Content \”和\“。Link \”我想要的位置。\“ match \”根据位置/顺序。 HTML:<div class=\"Content\"> Content1 </div> <!-- First of Contents-->
<div class=\"Content\"> Content2 </div>
<div class=\"Content\"> Content3 </div>
<div class=\"Link\"> Link1 </div> <!-- First of links -->
<div class=\"Link\"> Link2 </div>
<div class=\"Link\"> Link3 </div>
我试图实现的目标是以某种方式始终将它们按顺序链接起来。
如果我单击第一个\“。Link \”,它将使我对第一个\“。Content \”进行操作
如果我单击..let说第146个\“。Link \\”,它将使我对第146个\“。Content \”有所帮助
对内容执行的操作无论是什么,它都不会改变。它将始终执行与以前相同的功能。
我没有起点,只有这个主意...我该如何实现?
解决方法
使用
index
和eq
。 index
告诉您元素在同级元素中的位置,eq
从选择中的位置获取元素。
$(\'div.Link\').click(function() {
var linkIndex = $(this).index();
$(\'div.Content\').eq(linkIndex).css({color: \'red\'});
});
jsFiddle示例
, 获取单击的元素的索引,使用该索引访问Content元素。
$(\'.Link\').click(function () {
var content = $(\'.Content\').eq($(this).index($(\'.Link\')))
}
, 尝试这个:
$(function(){
$(\".Link\").click(function(){
var index = $(\".Link\").index(this);
var content= $(\".Content\").eq(index);
//Do Something with content.
});
});
, 我的想法:生成HTML时,我将使用属性\“ position \”,然后基于该信息确定我正在处理的位置。我认为这比遍历DOM找出元素的位置要快。
如果您不生成HTML内容,建议您通过加载的文档以编程方式添加属性。
, 如果要将所有内容放入单个(也称为DOM)对象中,则很可能可以使用.nextSibling功能在JAVASCRIPT中按顺序操作/链接这些内容。
因此...在您的情况下,(link1.nextSibling)将给出(link2)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。