我无法在Microsoft Edge中打开模式。
打开模态的链接是:
<%= link_to the_path, class: "btn btn-tertiary class-used-to-find-the-link", data: {"things-id" => 4, "other-things-id" => 7} do %>
<span>The Link's Text</span>
<% end %>
链接的JavaScript是:
$('class-used-to-find-the-link').click(onClick);
上面提到的onClick方法类似于:
onClick = function(event) {
//blah..blah...blah
};
.click
仅在IE Edge中未触发,但适用于所有其他浏览器。上面这个链接应该打开一个模态。我还有其他.click
不打开模态的例子,这些都很好。
所以,我认为这可能与此处的讨论有关:Microsoft Edge: onclick event stops working?。与帖子链接类似,当我刷新页面链接确实有效并且模态打开时。
此外,如果我首先打开包含要在另一个标签页中单击的链接的页面,通过右键单击并在“打开新标签页”中,该链接也将有效。
我在我关联的帖子中尝试了一些答案,包括mousedown
和mouseup
,但这些答案都无效。
感谢任何帮助。
答案 0 :(得分:0)
这是由Turbolinks造成的,与SO问答无关:Microsoft Edge: onclick event stops working?。因此,在某种程度上,此处链接的评论:https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/5782378/是有效的。
我以相同的方式和答案禁用了Turbolinks: https://stackoverflow.com/a/27196250/1945948
具体来说,问题是由turbolinks和事件处理程序如何结合引起的。禁用Turbolinks的替代方法是使用委托事件处理。这是一篇关于委托事件处理程序的好文章:https://www.iexposure.com/industry-insights/rails-4-turbolinks-and-delegated-event-handling-in-jquery。