javascript - jQuery 链接而不是按钮触发

标签 javascript jquery

所以,我有这个打开模式的代码片段:

<button id="trigger-overlay" class="order">Open Overlay</button>

现在,我想将它包含在 WordPress 菜单中,但我无法在那里添加按钮标签,所以我添加了:

<a href="#" class="order">Open Overlay</a>

我正在使用 jquery 向该链接添加 ID,如下所示:

$('.order').attr('id','trigger-overlay');

ID 已添加,但链接未打开任何内容,也就是说,它链接到“#”而不是打开模式... 我该如何解决这个问题以使其正常工作?

谢谢!

最佳答案

这件事可能是由于事件绑定(bind)顺序造成的。因此,您的代码 $('.order').attr('id','trigger-overlay'); 在 click 的绑定(bind)事件之后立即执行(我认为该事件如下所示:$('#trigger-overlay').click(function() { ... });。 如果您有能力更改该绑定(bind),请使用 jquery.on 方法:http://api.jquery.com/on/ 因此,该代码将如下所示:$(document).on('click', '#trigger-overlay', function() { ... });。 您也可以将 $('.order').attr('id','trigger-overlay'); 移动到具有该事件绑定(bind)的脚本上方。

关于javascript - jQuery 链接而不是按钮触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38919268/

相关文章:

javascript - 使用 Node JS 将多个数组转换为对象到一个数组

javascript - 设置动态变化的元素的左侧位置(循环中)

javascript - Jquery mobile获取listview选择的项目并将其文本发送到另一个页面

javascript - 使用 jQuery 对重复列表中的元素进行排序

javascript - 使用 JQuery 和 ASP.NET TextBox 控件来切换焦点

javascript - 使用 Backbone sync 与预先存在的 Javascript API

javascript - 单击按钮时页面显示所有语义 UI 模态

javascript - 可以从文件上传输入获取文件 data/val 并使用 Ajax 请求将其发送到服务器

jquery - 使用 jQuery 将 <span>-tag append 到 css header-element

javascript - 处理页面上多个位置的相同 div 的最佳方法