设置元素width()不适用于变量

时间:2011-07-21 11:04:23

标签: jquery jquery-mobile width

我正在尝试使用jQuery设置元素宽度,但它无法正常工作。

这是我的代码:

var $padding = 30,
$oddWidth = parseInt( Math.round( $(window).width()*0.75 ) ),
$odd = $oddWidth-$padding;

$('div:jqmData(role="content")').css({ 'margin-left':'25%'}).width( $odd );

有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:2)

以下是适合我的,所以你把jQuery代码包装在下面吗?

$(document).ready(function() {
    $("div:jqmData(role='page')").live('pageshow',function(){
        var $padding = 30,
        $oddWidth = parseInt( Math.round( $(window).width()*0.75 ) ),
        $odd = $oddWidth-$padding;
        $('div:jqmData(role="content")').css({ 'margin-left':'25%'}).width( $odd );
    });
});

jQuery.mobile在“页面”完全加载时有不同的document.ready(),因此如果没有这个,width()不正确或<div data-role="content">尚不存在。