nearest()函数不起作用,为什么?

时间:2013-07-31 08:35:06

标签: jquery

HTML:

<div class="slider">
    <div class="button-wrap">
        <div class="content-wrap" id="button-1">one contents</div>
        <div class="controller">
            <div><a mce_href="#buttton-1" href="#buttton-1">button one </a>
            </div>
        </div>
    </div>
</div>

jQuery的:

$('#button-1').closest('.slider').css({'left':'-1200px'});

这不起作用。

到目前为止我有这个脚本

<script>
jQuery(function($){
        $('#button-1').closest('.slider').css({'background':'#f00 !important'});
        $('#button-2').closest('.slider').css({'left':'-1200px !important'});
}
</script>

4 个答案:

答案 0 :(得分:0)

.slider元素需要使用absolute属性定位relativeleft

添加以下css:

.slider{
    position: relative; //or absolute
}

工作示例: http://jsfiddle.net/U96gB/

答案 1 :(得分:0)

我已经复制/粘贴你的代码并且它可以工作:s 确保你已经包含了jQuery库,可能忘记了position: relative;

上的.slider

答案 2 :(得分:0)

试试这个:

$('#button-1').closest('.slider').css({'margin-left':'-1200px'});

答案 3 :(得分:0)

删除!important,它在你的小提琴中起作用 - jQuery的.css()在那部分被绊倒了。

在这个答案中可以找到有关问题的一些背景知识:https://stackoverflow.com/a/2655976/613004

从样式表覆盖其他样式不需要

!important,因为jQuery将所有使用.css()的声明应用为内联样式,这将比样式表中的任何声明具有更高的特异性(请参阅:{ {3}}有关特异性计算的更多信息。)