我有一个问题,选择第二.prev()
选择第二.prev如.prev()上一个()
HTML:
<div></div> <- Set margin to 0;
<div></div>
<div id="interactive"></div>
的jQuery:
$("#interactive").prev().prev().css("margin", "0");
这将会给CSS到他们两个,我希望更改只适用于第一个div。
最好的问候,
我有一个问题,选择第二.prev()
选择第二.prev如.prev()上一个()
HTML:
<div></div> <- Set margin to 0;
<div></div>
<div id="interactive"></div>
的jQuery:
$("#interactive").prev().prev().css("margin", "0");
这将会给CSS到他们两个,我希望更改只适用于第一个div。
最好的问候,
HTML
<div id="target"></div>
<div></div>
<div id="interactive"></div>
jQuery的
$("#target").css("margin", "0");
这比prev().prev()
更好的做法和有效
这是“唯一”的解决方法 – ggzone
这是一种有效的方法,因为prev ().prev()需要更多处理。 – PrakashSharma
您可以检查此工作小提琴: http://jsfiddle.net/adp8qxyb/
<div id="interactive"></didv>
问题可能是HTML中的一些语法/标记错误。是确保每一个标签以及关闭
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之前还有更多的元素,它也可以工作!
有什么理由不能给你想要访问一个ID或类的div? –
http://codepen.io/anon/pen/aOvpdZ .'prev()。prev()'返回正确的元素,只有第一个div受影响 – fcalderan