选择第二个.prev例如.prev()。prev()

时间:2015-05-05 14:03:46

标签: javascript jquery web

我在选择第二个.prev()

时遇到问题

HTML:

<div></div> <- Set margin to 0;
<div></div>
<div id="interactive"></div>

jQuery的:

$("#interactive").prev().prev().css("margin", "0");

它会给两个人提供CSS,我希望这些更改仅适用于第一个div。

最诚挚的问候,

3 个答案:

答案 0 :(得分:0)

HTML

<div id="target"></div>
<div></div>
<div id="interactive"></div>

的jQuery

$("#target").css("margin", "0");

这比prev().prev()和效率

更好

答案 1 :(得分:0)

你可以查看这个工作小提琴: http://jsfiddle.net/adp8qxyb/

<div id="interactive"></didv>

问题可能是HTML中存在一些语法/标记错误。确保每个标签都关闭

答案 2 :(得分:-1)

HTML:

<div></div>
<div></div>
<div id="interactive"></div>

JavaScript的:

var f;
for( f=0;f<document.getElementsByTagName("div").length;f++){
  var div = document.getElementsByTagName("div")[f];
  if(div===document.getElementById("interactive")){
    document.getElementsByTagName("div")[f-2].style.margin="0";
  }
}

我测试了它!
如果在3个div之前有更多元素,它也可以工作!