JQUERY IF / ELSE语法错误没有工作

时间:2013-01-17 14:57:14

标签: jquery

我试图在页面达到1024px的屏幕宽度时向左移动-340像素,然后当你打开浏览器窗口时,它会回到原来的状态。我使用了jslint并更正了语法,但是代码中没有发生任何事情让它做出反应,任何帮助都会非常感激,也许我忽略了某些东西,或者我的思维过程可能会稍微偏离。谢谢!

function move() {
var box =-340;
var pagewidth = $('body').width();

if (pagewidth>1024) {
box=pagewidth-box;
box=box+'px right';
}else {
box=pagewidth-box;
box=box+'px left';

}
$('#vt_nice_slideshow180').css('margin-left', box );

}

$(document).ready(function(){
move();
$(window).resize(move);

});  

4 个答案:

答案 0 :(得分:0)

改变你的电话:

$(document).ready(function(){
    move();
});

$(window).resize(function() {
    move();
});

答案 1 :(得分:0)

j08691的回答与我在发布时确认的相同......

box=box+'px right'; 

box=box+'px left';

无效。由于box是数字,你试图将左边距设置为'100px right',这是无效的css。

答案 2 :(得分:0)

你正在使用无效的CSS。 margin属性不接受右侧或左侧。 如果您想操纵,请在那里添加右侧或左侧。

湾您要为box分配一个负值,然后再从pagewidth中减去它,这样您实际上最终会添加( - = +)

℃。无需添加px。这是JQuery的默认值,因此您可以传递一个整数。

d。最好使用CSS media queries来接近它。

答案 3 :(得分:0)

试试这个

function move() {
    var pagewidth = $('body').width();
    var box = -340;
    box = pagewidth - box;
    if (pagewidth > 1024) {
       $('#vt_nice_slideshow180').css('margin-left', box + +'px right');
    }else{ 
       $('#vt_nice_slideshow180').css('margin-left', box + 'px left');
    }
}

问候。