javascript - 获取 jQuery Mobile 弹出窗口的触发元素

标签 javascript jquery jquery-mobile

我有一个像这样的简单 jQuery Mobile 弹出窗口:

<section data-role="popup" data-overlay-theme="a" id="eat">
    Are you sure you want to eat?
</section>

我有多个链接触发相同的弹出窗口:

<a href='#eat' data-role='button' data-rel='popup' data-position-to='window' data-food="pizza">Pizza</a>
<a href='#eat' data-role='button' data-rel='popup' data-position-to='window' data-food="sandwich">Sandwich</a>

我想知道是否有任何方法可以确定单击哪个链接打开了弹出窗口。我试过:

$('#eat').on('popupafteropen', function(event) {
    console.log(event);
});

但是我收到的控制台输出没有给我触发元素的任何对象(除非我遗漏了什么)。有办法做到这一点吗?

附加信息:我正在尝试用链接上的 data-food 属性值填充其他内容。因此我需要引用 <a>元素,而不是 <section>元素。

最佳答案

我为每个链接添加了一个id

     <a href='#eat' id="pizza"    data-role='button' data-rel='popup' data-position-to='window' data-food="pizza">Pizza</a>
     <a href='#eat' id="sandwich" data-role='button' data-rel='popup' data-position-to='window' data-food="sandwich">Sandwich</a>

并使用了这个脚本

<script>
  $('#pizza').on( "click", function() {
    console.log(this);
  });

  $('#sandwich').on( "click", function() {
    console.log(this);
  });
</script>

要使其正常工作,另请参阅 jsfiddle

点击“Pizza”后的控制台 enter image description here

关于javascript - 获取 jQuery Mobile 弹出窗口的触发元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13435296/

相关文章:

javascript - 如何更改登录测试场景以使其正常运行

javascript - 我正在尝试根据更改选择器使用 on() 附加事件

JavaScript OnChange 加载另一个 JSP 页面

ios - 在iOS中将XML转换为JSON

jquery-mobile - 使 jquery 移动文本字段与文本位于同一行

javascript - phoneGap 中的音频不会停止

javascript - Steam 机器人 : Printing out items that are traded

javascript - webpack 获取 material-ui 的正确方法

javascript - 下拉菜单在移动设备上不关闭(在桌面上工作正常)- superfish.js

javascript - JQ列表中的按钮