我在网站上制作宽度为1920px的div自动中心时遇到了一些麻烦。 现在我一直在使用这个jQuery代码在页面打开时自动居中div:
<script type="text/javascript">
$(window).load(function() {
$('#slider').nivoSlider();
var extra= 1920 - $(window).width();
var extraleftside= extra/2;
$("div#scroller").css("left", "-" + extraleftside + "px");
});
</script>
但该代码仅在网站刷新时进行调整,是否可以让它实时完成?
如果您想看到我想要的效果,它与此网站中的滚动背景相同:http://www.apps.no
LeGEC回答这个问题非常好,这段代码完成了这个诀窍:
<script type="text/javascript">
$(window).load(function() {
$('#slider').nivoSlider();
var extra= 1920 - $(window).width();
var extraleftside= extra/2;
$("div#scroller").css("left", "-" + extraleftside + "px");
}
);
$(window).bind("resize", resizeWindow);
function resizeWindow( e ) {
var extra= 1920 - $(window).width();
var extraleftside= extra/2;
$("div#scroller").css("left", "-" + extraleftside + "px");
}
</script>
答案 0 :(得分:1)
您的意思是在resize上重新计算吗?
function doResize(){
var extra= 1920 - $(window).width();
var extraleftside= extra/2;
$("div#scroller").css("left", "-" + extraleftside + "px");
}
$(window).load(function(){
// maybe the slider should also be updated on resize...
$('#slider').nivoSlider();
doResize();
});
$(function(){
$(window).resize(doResize);
});