JQuery 使用响应式 div 换行表单元格



我有一个自动生成的 SharePoint 表table#layoutsTable。我能够用div.row元素包装整个表。我正在尝试根据单元格的宽度属性将单个类添加到具有 columns + .large-# 元素的td元素中。以下是精简的 html 标记:

<span id="DeltaPlaceHolderMain">
    ...
        <div class="row">
            <table id="layoutsTable" style="width: 100%;">
                <tbody>
                    <tr style="vertical-align: top;>
                        <td style="width: 66.6%;">
                            ...
                        </td>
                        <td style="width: 33.3%;">
                            ...
                        </td>
                    </tr>
                </tbody>
            </table>
        </div>
    ...
</span>

<div class="row"> 元素已经使用 jquery 手动包装到标记中,并尝试将类添加到此代码片段中的单个单元格中:

$(document).ready(function(){
    $('table#layoutsTable').wrap('<div class="row">'); //operates properly
    $('table#layoutsTable td').each(function(){
        var width = $(this).css('width');
        console.log(width);
        if(width === '66.6%'){
            $(this).addClass('large-8 columns');
        }
        if(width === '33.3%'){
            $(this).addClass('large-4 columns');
        }
    });
});

另一种方法(尽管响应性选项有限)是简单地将这些响应类添加到单元格本身。但是,这不是首选。

我不会用div 包装 td。它违背了具有表结构的目的。只需将类添加到 td 即可。

$(this).addClass("large-8 columns");

http://api.jquery.com/addClass/

最新更新