代码之家  ›  专栏  ›  技术社区  ›  marcelo2605

jQuery.find()返回未定义

  •  2
  • marcelo2605  · 技术社区  · 6 年前

    我在我的页面上使用引导4导航标签,然后其中一些有一个YouTube播放器。因此,我创建了一个函数来检测,当一个选项卡被点击时,如果上一个选项卡有一个播放器,然后停止视频。

    $('.home-section').on('show.bs.tab', 'a[data-toggle="tab"]', function (event) {
      if (typeof event.relatedTarget  !== "undefined") {
        var tab = $(event.relatedTarget).attr('href');
        var player = $(tab).find($('#youtube')).get(0);
        pauseVideo(player);
      }
    });
    

    但现在,我有一个导航标签内的一个窗格,这个功能不起作用。这个 tab 变量返回正确的id,但是 player 变量总是返回未定义。

    2 回复  |  直到 6 年前
        1
  •  4
  •   Dilip Solanki    6 年前

    请更正

    $('.home-section').on('show.bs.tab', 'a[data-toggle="tab"]', function (event) {
      if (typeof event.relatedTarget  !== "undefined") {
        var tab = $(event.relatedTarget).attr('href');
        var player = $(tab).find('#youtube').get(0);
        pauseVideo(player);
      }
    });
    
        2
  •  1
  •   Hassan Sadeghi    6 年前

    var player = $(tab).find($('#youtube')).get(0);
    

    你必须通过考试 selector ( #youtube )至 find() 功能编号 jQuery

    var player = $(tab).find('#youtube').get(0);