javascript - 在 Material 设计灯中选择选项卡时调用函数

标签 javascript material-design-lite

我在页面上有三个选项卡。

<!-- Tabs -->
<div class="mdl-layout__tab-bar">
  <a href="#plots-tab" class="mdl-layout__tab is-active"">Plots</a>
  <a href="#plots-data-tab" class="mdl-layout__tab">Plots data</a>
  <a href="#report-tab" class="mdl-layout__tab">Report</a>
</div>

选择图选项卡时,我需要重新绘制图。我试过 onclick="redraw_plots();" 到 Plots 选项卡,但在激活选项卡之前调用函数的速度太快。当此选项卡激活时,有什么方法可以获取事件?

谢谢。

最佳答案

这是因为元素内联事件是第一个要执行的事件。

要在 MDL 选项卡事件之后执行,您可以这样做:

使用 Javascript Vanilla :

首先在链接上添加一个id

<a id="#plots-tab" href="#plots-tab" class="mdl-layout__tab is-active"">Plots</a>

其次添加一个事件监听器

document.getElementById("#plots-tab").addEventListener("click", function(){
   redraw(); 
});

或者使用 Jquery:

在元素上添加事件监听器

$('a[href="#plots-tab"]').on('click',function(){
   redraw();        
});

关于javascript - 在 Material 设计灯中选择选项卡时调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33245938/

相关文章:

jquery - 如何使下拉列表覆盖外部卡片?

material-design-lite - 将侧边栏 mdl-drawer 放置在导航面板下方而不是顶部

javascript - 无法从数组过滤器返回正确的值

javascript - 如何在创建 VueJS 实例之前*加载外部托管 (CDN) JS 库?

css - 如何缩放 MDL 微调器?

javascript - 如何在 js 中拆分字符串,但有一些异常(exception)

javascript - 将 Material 设计与 VueJS 结合使用

javascript - 如何在 Redux-form 中有可搜索的下拉菜单

php - Ajax 表单只能工作一次

javascript - 如何访问选择的 parentNode 以引发元素?