jquery - Bootstrap3 Accordion 表不适用于 IOS 移动设备

标签 jquery html ios css accordion

我有一个 Accordion table 在所有设备和浏览器上都能正常工作,但在 ios 移动设备上根本不能工作。我找到的解决方案仅适用于 div 并使用 href,但在我的情况下,我确实需要使用包含多个列的表。 这里有代码 http://jsfiddle.net/k3yrnsux/ 我正在使用 Boostrap 3。

有人可以帮忙吗?

    <div class="table-content">
    <table id="table-collapse" class="table table-responsive table-hover table-striped" style="border-collapse:collapse;">
        <thead>
            <tr>
                <th>#</th>
                <th>Date</th>
                <th>Description</th>
                <th>Credit</th>
                <th>Debit</th>
                <th>Balance</th>
            </tr>
        </thead>
        <tbody>
            <tr data-toggle="collapse" data-target="#demo1" data-parent="table-collapse" class="accordion-toggle">
                <td>1</td>
                <td>05 May 2013</td>
                <td>Credit Account</td>
                <td class="text-success">$150.00</td>
                <td class="text-error"></td>
                <td class="text-success">$150.00</td>
            </tr>
            <tr>
                <td colspan="6" class="hiddenRow">
                    <div class="accordian-body collapse" id="demo1">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque malesuada ligula non semper facilisis. Sed mattis libero vel convallis tincidunt. Sed tempor auctor ultrices.</div>
                </td>
            </tr>
            <tr data-toggle="collapse" data-target="#demo2" class="accordion-toggle accordion-group">
                <td>2</td>
                <td>05 May 2013</td>
                <td>Credit Account</td>
                <td class="text-success">$11.00</td>
                <td class="text-error"></td>
                <td class="text-success">$161.00</td>
            </tr>
            <tr>
                <td colspan="6" class="hiddenRow">
                    <div id="demo2" class="accordian-body collapse">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque malesuada ligula non semper facilisis. Sed mattis libero vel convallis tincidunt. Sed tempor auctor ultrices.</div>
                </td>
            </tr>
            <tr data-toggle="collapse" data-target="#demo3" class="accordion-toggle">
                <td>3</td>
                <td>05 May 2013</td>
                <td>Credit Account</td>
                <td class="text-success">$500.00</td>
                <td class="text-error"></td>
                <td class="text-success">$661.00</td>
            </tr>
            <tr>
                <td colspan="6" class="hiddenRow">
                    <div id="demo3" class="accordian-body collapse">
                        <table class="table table-responsive table-striped table-hover">
                            <thead>
                                <tr>
                                    <th>#</th>
                                    <th>Date</th>
                                    <th>Description</th>
                                    <th>Credit</th>
                                    <th>Debit</th>
                                    <th>Balance</th>
                                </tr>
                            </thead>
                            <tbody>
                                <tr>
                                    <td>1</td>
                                    <td>05 May 2013</td>
                                    <td>Credit Account</td>
                                    <td class="text-success">$150.00</td>
                                    <td class="text-error"></td>
                                    <td class="text-success">$150.00</td>
                                </tr>
                                <tr>
                                    <td>1</td>
                                    <td>05 May 2013</td>
                                    <td>Credit Account</td>
                                    <td class="text-success">$150.00</td>
                                    <td class="text-error"></td>
                                    <td class="text-success">$150.00</td>
                                </tr>
                        </table>
                    </div>
                </td>
            </tr>
            </tbody>
    </table>
</div>

    function (o) {
    var s = t(this);
    s.attr("data-target") || o.preventDefault();
    var n = e(s),
        a = n.data("bs.collapse"),
        r = a ? "toggle" : t.extend({}, s.data(), {
            trigger: this
        });
    i.call(n, r)
}

    .hiddenRow {
    padding:0px!important;
}
.hiddenRow div {
    margin: 20px;
    white-space:normal;
}

最佳答案

我也遇到了 iOS 和 Bootstrap 的问题。

出于某种原因,如果您手动将点击事件附加到 tr 元素,它可以在没有和发出的情况下工作,但您不能将附加属性传递给选择器。

http://jsfiddle.net/8x3ub2xz/

似乎只有当有附加属性传递给选择器时,才能附加点击事件?不知道为什么。

这行得通

$(document).ready(function () {

    $("tr").click(function () {
        var sender = $(this);
        var targetId = $(sender.attr("data-target"))
        targetId.toggle().collapse();
    });

});

这不是

$(document).ready(function () {

    $("tr [data-toggle='collapse']").click(function () {
        var sender = $(this);
        var targetId = $(sender.attr("data-target"))
        targetId.toggle().collapse();
    });

});

关于jquery - Bootstrap3 Accordion 表不适用于 IOS 移动设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27567880/

相关文章:

javascript - 添加 tween.js 后按钮单击事件不会触发

javascript - jQuery 模糊 div 不在焦点

javascript - not(this) 方法不适用于按钮 (jQuery)

ios - 检测自定义键盘扩展中的输入对象 View 类型

ios - Swift UITableview Custom Cell with multiple section array and row data array Search 实现

javascript - 基本 jQuery slider - 当前幻灯片编号

html - Wordpress CSS——可能是一个很好的解决方案

html - apache 中的文件夹不解释 html

javascript - jquery 输入 - 如何正确处理文本更改

ios - 无法更新配置文件