为了账号安全,请及时绑定邮箱和手机立即绑定

选项卡切换无法在多张卡片上正常工作

选项卡切换无法在多张卡片上正常工作

料青山看我应如是 2023-04-27 17:10:24
我正在创建一个应用程序,它生成多张卡片,每张卡片上有 3 个选项卡。但是选项卡切换并不像预期的那样工作。在第一张卡上执行此操作时,它工作正常,但是当我尝试按其他卡选项卡时,它只会在第一张卡上切换。我无法理解它。$(document).on('click', '.navigation a', function(e) {  e.preventDefault();  $(this).tab('show');})<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script><link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet" /><script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script><script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script><div class="card-columns">  <div class="card">    <div class="card-header">      <ul class="nav nav-tabs card-header-tabs navigation" role="tablist">        <li class="nav-item">          <a class="nav-link active" href=".info" role="tab" aria-controls="info" aria-selected="true" data-toggle="tab">Info</a>        </li>        <li class="nav-item">          <a class="nav-link" href=".ingredients" role="tab" aria-controls="ingredients" aria-selected="false" data-toggle="tab">Ingredients</a>        </li>        <li class="nav-item">          <a class="nav-link" href=".nutrition" role="tab" aria-controls="nutrition" aria-selected="false" data-toggle="tab">Nutrition information</a>        </li>      </ul>    </div>    <div class="card-body">      <h4 class="card-title">Item name</h4>      <div class="tab-content mt-3">        <div class="tab-pane active info" role="tabpanel">          <img src="https://images.pexels.com/photos/1279330/pexels-photo-1279330.jpeg?auto=compress&cs=tinysrgb&dpr=3&h=750&w=1260" class="card-img-top" alt="">          <div class="text-center">            <a href="" target=_blank><button type="button" class="btn btn-primary">Full recipe</button></a>            <a href=""><button type="button" class="btn btn-primary">Add to favorites</button></a>          </div>        </div>
查看完整描述

1 回答

?
小唯快跑啊

TA贡献1863条经验 获得超2个赞

这是因为使用了类和 href,例如试试这个:


$(document).on('click','.navigation a', function (e) {

    e.preventDefault();

    $(this).tab('show');

})

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>

<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" rel="stylesheet"/>

<div class="card-columns">

  <div class="card">

    <div class="card-header">

      <ul class="nav nav-tabs card-header-tabs navigation" role="tablist">

        <li class="nav-item">

          <a class="nav-link active" href=".info" role="tab" aria-controls="info" aria-selected="true" data-toggle="tab">Info</a>

        </li>

        <li class="nav-item">

          <a class="nav-link"  href=".ingredients" role="tab" aria-controls="ingredients" aria-selected="false" data-toggle="tab">Ingredients</a>

        </li>

        <li class="nav-item">

          <a class="nav-link" href=".nutrition" role="tab" aria-controls="nutrition" aria-selected="false" data-toggle="tab">Nutrition information</a>

        </li>

      </ul>

    </div>

    

    <div class="card-body">

      <h4 class="card-title">Item name</h4>

      <div class="tab-content mt-3">

        <div class="tab-pane active info" role="tabpanel">

          <img src="https://images.pexels.com/photos/1279330/pexels-photo-1279330.jpeg?auto=compress&cs=tinysrgb&dpr=3&h=750&w=1260" class="card-img-top" alt="">

          <div class="text-center">

            <a href="" target=_blank><button type="button" class="btn btn-primary">Full recipe</button></a>

            <a href=""><button type="button" class="btn btn-primary">Add to favorites</button></a>

          </div>

        </div>


        <div class="tab-pane ingredients" role="tabpanel" aria-labelledby="ingredients-tab">

          <h6 class="card-subtitle mb-2">Ingredient list</h6>

          <ul id=ingredientList>

            <li>Ingredient</li>

            <li>Ingredient</li>

            <li>Ingredient</li>

            <li>Ingredient</li>

          </ul>

        </div>


        <div class="tab-pane nutrition" role="tabpanel" aria-labelledby="nutrition-tab">

          <h6 class="card-subtitle mb-2">Nutrition information</h6>

          <ul id=nutritionInfo>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

          </ul>

        </div>

      </div>

    </div>

  </div>

  

  <div class="card">

    <div class="card-header">

      <ul class="nav nav-tabs card-header-tabs navigation" role="tablist">

        <li class="nav-item">

          <a class="nav-link active" href=".info2" role="tab" aria-controls="info" aria-selected="true" data-toggle="tab">Info</a>

        </li>

        <li class="nav-item">

          <a class="nav-link"  href=".ingredients2" role="tab" aria-controls="ingredients" aria-selected="false" data-toggle="tab">Ingredients</a>

        </li>

        <li class="nav-item">

          <a class="nav-link" href=".nutrition2" role="tab" aria-controls="nutrition" aria-selected="false" data-toggle="tab">Nutrition information</a>

        </li>

      </ul>

    </div>

    

    <div class="card-body">

      <h4 class="card-title">Item name</h4>

      <div class="tab-content mt-3">

        <div class="tab-pane active info2" role="tabpanel">

          <img src="https://images.pexels.com/photos/1279330/pexels-photo-1279330.jpeg?auto=compress&cs=tinysrgb&dpr=3&h=750&w=1260" class="card-img-top" alt="">

          <div class="text-center">

            <a href="" target=_blank><button type="button" class="btn btn-primary">Full recipe</button></a>

            <a href=""><button type="button" class="btn btn-primary">Add to favorites</button></a>

          </div>

        </div>


        <div class="tab-pane ingredients2" role="tabpanel" aria-labelledby="ingredients-tab">

          <h6 class="card-subtitle mb-2">Ingredient list</h6>

          <ul id=ingredientList>

            <li>Ingredient</li>

            <li>Ingredient</li>

            <li>Ingredient</li>

            <li>Ingredient</li>

          </ul>

        </div>


        <div class="tab-pane nutrition2" role="tabpanel" aria-labelledby="nutrition-tab">

          <h6 class="card-subtitle mb-2">Nutrition information</h6>

          <ul id=nutritionInfo>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

          </ul>

        </div>

      </div>

    </div>

  </div>

  

  <div class="card">

    <div class="card-header">

      <ul class="nav nav-tabs card-header-tabs navigation" role="tablist">

        <li class="nav-item">

          <a class="nav-link active" href=".info3" role="tab" aria-controls="info" aria-selected="true" data-toggle="tab">Info</a>

        </li>

        <li class="nav-item">

          <a class="nav-link"  href=".ingredients3" role="tab" aria-controls="ingredients" aria-selected="false" data-toggle="tab">Ingredients</a>

        </li>

        <li class="nav-item">

          <a class="nav-link" href=".nutrition3" role="tab" aria-controls="nutrition" aria-selected="false" data-toggle="tab">Nutrition information</a>

        </li>

      </ul>

    </div>

    

    <div class="card-body">

      <h4 class="card-title">Item name</h4>

      <div class="tab-content mt-3">

        <div class="tab-pane active info3" role="tabpanel">

          <img src="https://images.pexels.com/photos/1279330/pexels-photo-1279330.jpeg?auto=compress&cs=tinysrgb&dpr=3&h=750&w=1260" class="card-img-top" alt="">

          <div class="text-center">

            <a href="" target=_blank><button type="button" class="btn btn-primary">Full recipe</button></a>

            <a href=""><button type="button" class="btn btn-primary">Add to favorites</button></a>

          </div>

        </div>


        <div class="tab-pane ingredients3" role="tabpanel" aria-labelledby="ingredients-tab">

          <h6 class="card-subtitle mb-2">Ingredient list</h6>

          <ul id=ingredientList>

            <li>Ingredient</li>

            <li>Ingredient</li>

            <li>Ingredient</li>

            <li>Ingredient</li>

          </ul>

        </div>


        <div class="tab-pane nutrition3" role="tabpanel" aria-labelledby="nutrition-tab">

          <h6 class="card-subtitle mb-2">Nutrition information</h6>

          <ul id=nutritionInfo>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

            <li>Nutrition item</li>

          </ul>

        </div>

      </div>

    </div>

  </div>

  </div>


查看完整回答
反对 回复 2023-04-27
  • 1 回答
  • 0 关注
  • 74 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信