【问题标题】:Alert when data-rel="back" is clicked单击 data-rel="back" 时发出警报
【发布时间】:2017-08-30 13:04:24
【问题描述】:

我在我的网页中使用data-rel="back" 实现了一个弹出窗口上的简单按钮

单击后退按钮 (dat-rel="back") 时,我需要收到警报。有没有办法确定这一点?我试图向每个类选择器添加一个单击事件,但它不起作用。

$(document).ready(function() {
  $(".ui-icon-left").click(function() {
    alert("clicked");
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#" data-rel="back" class="ui-icon-left ui-btn ui-corner-all ui-shadow ui-btn ui-icon-back ui-btn-icon-notext ui-btn-left">Click</a>

【问题讨论】:

  • @RoryMcCrossan .ui-icon-left 在 jQM 自动初始化页面时动态添加。 OP, .ready() 不应该在 jQM 中使用;改为收听pagecreate。似乎您正试图阻止关闭弹出窗口,但无法通过这种方式实现。首次打开时需要劫持“关闭按钮”,然后手动关闭。
  • @Omar 道歉 - 我错过了 jquery-mobile 标签
  • @RoryMcCrossan 不用担心 :)

标签: javascript jquery jquery-mobile


【解决方案1】:

这是您当前问题的可能答案:

$(document).on("vclick", "[data-rel=back]", function(e) {
    console.log("Clicked!!!");
});

不知道您要做什么,但是,正如 Omar 在之前的评论中正确指出的那样,您无法阻止 popup 以这种方式关闭。

如果您有一个带有必填字段的popup,也许您可​​以删除data-rel="back" 链接,将data-history="false"data-dismissible="false" 添加到您的popup 标记并创建您自己的关闭按钮,您可以在其中执行必要的操作测试并手动关闭popup

【讨论】:

  • 为了更具体并避免使用rel=back 影响其他元素,请将.ui-popup 添加到选择器,以便仅定位弹出窗口。 .ui-popup [data-rel=back]。编辑:劫持关闭按钮,event.preventDefault() 然后添加您的逻辑。
猜你喜欢
  • 1970-01-01
  • 2022-01-14
  • 1970-01-01
  • 2016-09-14
  • 2013-04-09
  • 2015-09-10
  • 1970-01-01
  • 2014-11-05
  • 1970-01-01
相关资源
最近更新 更多