0

好的,这是我的代码。

$( window ).on( "orientationchange", function( event ) {
alert('1');
if (event.orientation == 'landscape'){
    alert('2');
    $('.item').css('width', '30.66%');   
} else if (event.orientation == 'portrait') {
    $('.item').css('width', '47%');   
}
});

$(document).on('ready', function () {
    $( window ).orientationchange(); 
});

我只是想改变名为.item 的对象的宽度。我在 jQuery mobile 上查找了orientationchange 的语法,它似乎是正确的。现在,每次按预期更改方向时,我都会收到第一个警报,但我没有进入 if 语句。根据我读到的内容,您可以使用 event.orientation 访问方向,它等于“肖像”或“风景”,但它似乎对我不起作用。最后一部分只是为了在页面加载后立即调用该函数,这始终可以正常工作。谢谢

4

1 回答 1

0

方向是window.screen对象的属性,而不是事件。尝试

if (window.screen.orientation.indexOf('landscape') >= 0){...}

由于这是一个新兴标准,您可能还必须检查供应商特定的实现,例如window.screen.mozOrientation

参考

于 2013-08-14T00:21:49.100 回答