我得到了一些解决方案的帮助,使这个“箭头”与点击它上面的物体中间对齐...它正在工作。
从那以后,我在设计上做了一些工作,需要将“wrap”div的溢出设置为position:relative以隐藏箭头的x轴溢出......这有效,但是:
现在对齐已经消失。我无法弄清楚为什么我对jQuery不好:(
一个重要的注意事项:这个站点是响应式的,调整浏览器宽度现在正在向箭头位置做疯狂的事情(只是因为我已经将换行更改为位置:相对)。
在此处查看代码:http://jsfiddle.net/RevConcept/y86RG/5/
感谢您的帮助!
HTML:
<div class="container">
<div class="row">
<ol class="flexslider-nav">
<li class="threecol">
<img id="discover" class="btn-workflow" src="http://nillabean.com/images/circle-225.png" alt="#" />
</li>
<li class="threecol">
<img id="design" class="btn-workflow" src="http://nillabean.com/images/circle-225.png" alt="#" />
</li>
<li class="threecol">
<img id="develop" class="btn-workflow" src="http://nillabean.com/images/circle-225.png" alt="#" />
</li>
<li class="threecol last">
<img id="deploy" class="btn-workflow" src="http://nillabean.com/images/circle-225.png" alt="#" />
</li>
</ol>
</div><!--end row-->
<!-- WORKFLOW: DESC. SLIDER -->
<div class="row">
<div class="twelvecol last">
<div class="arrow-wrap">
<div class="arrow"></div>
</div><!--end arrow-wrap -->
<div class="flexslider">
<ul class="slides">
<li>
<p>Test Content</p>
</li>
<li>
<p>Test Content</p>
</li>
<li>
<p>Test Content</p>
</li>
<li>
<p>Test Content</p>
</li>
</ul>
</div><!--end flexslider-->
</div><!--end col-->
</div><!--end row-->
CSS:
.container p {
color: #fff;
line-height: 100px;
background: #000;
text-align: center;
margin: 20px 0 0 0;
}
.flexslider p {
margin-top:0px;
background:transparent;
color:#000000;
}
.flexslider {
border-bottom:1px #000 solid;
border-left:1px #000 solid;
border-right:1px #000 solid;
}
h1, h2, h3 {
text-align:center;
}
.flexslider-nav li img {
display:block;
margin:0px auto;
}
.arrow {
position:absolute;
background:transparent url(http://nillabean.com/images/arrow.png) repeat-x bottom center;
width:2200px;
height:40px;
}
.arrow-wrap {
position:relative;
height:35px;
border:1px #C00 solid;
}
JQUERY:
var start_pos = $("#discover").offset().left + $("#discover").width()/2 - $(".arrow").width()/2;
$(".arrow").css("left", start_pos);
$(".btn-workflow").click(function(event){
var x = $(this).offset().left;
var img_width = $(this).width();
var arrow_width = $(".arrow").width();
var arrow_x = x + img_width/2 - arrow_width/2;
$(".arrow").animate({
"left": arrow_x
}, "slow");
});
IMAGE:
这最终是我要做的......边界和透明度使得这比仅添加简单的箭头更难。
答案 0 :(得分:0)
http://jsfiddle.net/y86RG/13/ 那会有用吗?这是我改变的内容
.arrow {
position:absolute;
background:transparent url(http://nillabean.com/images/arrow.png) repeat-x bottom center;
left: 0;
top: 0;
right: 0;
height:35px;
}
.arrow-wrap {
position:relative;
height:35px;
border:1px #C00 solid;
}
在JS中,删除了以下行
// $(".arrow").css("left", start_pos);