Jquery 设置元素宽度()不适用于变量

Jquery 设置元素宽度()不适用于变量,jquery,jquery-mobile,width,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 ); 有人能帮我吗?以下内容对我有用,那么您是否将jQuer

我正在尝试使用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 );

有人能帮我吗?

以下内容对我有用,那么您是否将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在“页面”完全加载时有一个不同的定义,因此如果没有这个定义,
width()
可能不正确,或者
还不存在

这在我的快速jQuery.mobile测试中对我有效。到底是什么不起作用,你在控制台中看到任何错误了吗?它对我起作用了!可能是您的选择器?控制台中没有错误,剩余25%的余量已分配。所以它不能与init或选择器相关。此外,如果我使用的是宽度('123px')或宽度('75%),它们也会被分配。我不明白为什么它不能是变量。找到它。。。代码在if-else语句中,我在if部分声明了两个变量,并在else部分进行了格式化…:-|不过,谢谢!,因为复制粘贴你的代码让我认出了它。