Javascript 如何在Qunit装置内更改DOM元素的css选项?

Javascript 如何在Qunit装置内更改DOM元素的css选项?,javascript,jquery,css,unit-testing,qunit,Javascript,Jquery,Css,Unit Testing,Qunit,我正在为数独领域创建UI界面。它必须是一个正方形的表格,9x9内有81个单元格。我希望桌子的宽度永远等于它的高度 所以我创建了一个函数,将表格的高度设置为宽度值。现在我可以调用此函数,例如,在调整窗口大小时: sudokuPresenter = { // other methods resize: function(tableId) { var width = $(tableId).width(); $(tableId).height(widt

我正在为数独领域创建UI界面。它必须是一个正方形的表格,9x9内有81个单元格。我希望桌子的宽度永远等于它的高度

所以我创建了一个函数,将表格的高度设置为宽度值。现在我可以调用此函数,例如,在调整窗口大小时:

sudokuPresenter = {

    // other methods

    resize: function(tableId) {
        var width = $(tableId).width();
        $(tableId).height(width);
    }
};
我尝试使用QUnit为resize方法创建单元测试。这是我的QUnit固定装置:

<div id="qunit-fixture">
    <table cellspacing="0" cellpadding="0" id="sudoku">
        <tr>
            <td><input type="text" id="input1"></td>
            <td><input type="text" id="input2"></td>
            <td><input type="text" id="input3"></td>
            <td><input type="text" id="input4"></td>
            <td><input type="text" id="input5"></td>
            <td><input type="text" id="input6"></td>
            <td><input type="text" id="input7"></td>
            <td><input type="text" id="input8"></td>
            <td><input type="text" id="input9"></td>
        </tr>
        ...
    </table>
</div>
问题在于:

$('#sudoku').css('width', '200px');
不起作用。测试显示,我的桌子的高度现在是1278我的显示器的宽度。因此,由于未知原因,qunit装置内的表的宽度为1278。Firebug显示$'sudoku'.css'width','200px';没有在我的表格标签中添加任何css样式


是否可以通过JQuery CSS方法将CSS样式添加到qunit fixture中的元素?

可以尝试使用此替代方法:$'sudoku'.width200?因此,您的qunit测试正常,但演示者代码不正常。对吗?我试着用$'sudoku'.width200;-结果是一样的,我的单元测试显示了错误的结果,因为我的qunit fixture中的表填充了我的监视器的宽度。当你检查qunit fixture的css时,你会看到它被放置在视图之外并且尺寸很大。您可以在固定件之前使用替换,也可以在测试准备代码中进行调整。
$('#sudoku').css('width', '200px');