2

jQuery UI 手风琴的文档提供了 h3 和 div 组合的多种变体示例,它们成为手风琴按钮之一的标题和内容。

在我的页面中,我有每个 h3 的 ID,当有人单击其中一个手风琴按钮时,我想以编程方式访问它们。我看到的最明显的方法是在 h3 上注册一个单击侦听器并访问事件目标以提取 HTML ID,可能在手风琴调用之后。但我有点不清楚该解决方案是否正确。

让事件处理程序告诉用于构建用户单击的手风琴按钮的 h3 的 HTML ID 的首选方法是什么?

4

2 回答 2

2

创建手风琴时,您可以简单地为激活事件传递事件处理程序。此事件在面板被激活后触发(动画完成后)。见http://api.jqueryui.com/accordion/

你可以做这样的事情

$( ".selector" ).accordion({
activate: function( event, ui ) {
 if(!ui.newHeader.isEmptyObject()){
  alert(ui.newHeader.attr('id'))
 }
}
});
于 2013-04-20T13:56:20.663 回答
1

这会将id被点击h3元素的 分配给一个变量。这也应该考虑动态内容,因为它使用on而不是仅仅click.

$("h3").on("click", function(){
     var id = $(this).attr("id");
});

但是,如果这对于动态内容不起作用,您可能想尝试这样的事情:

$("body").on("click", "h3", function(){
     var id = $(this).attr("id");
});
于 2013-04-20T13:55:28.430 回答