gpt4 book ai didi

javascript - 如何禁用js/jquery中同一类的所有链接的右键单击?

转载 作者:行者123 更新时间:2023-11-28 13:32:17 24 4
gpt4 key购买 nike

Rails 4 + JS + jquery

如何禁用使用相同类的链接的右键单击。

<% @schedule_hash.values.each do |schedule| %>
<%= link_to "Cancellation policy", {:controller => 'web', :action => 'get_cancellation_policies', :operator_id => schedule["bus_schedules"].operator_id}, :onclick => "", :class => "canc_policy", :id => "canc_policy#{schedule["bus_schedules"].operator_id}", :remote => true %>
<% end %>

假设@schedule_hash.count = 7,那么7次链接将带有相同的类名。

所以我正在使用这个脚本

<script type="text/javascript">
$(document).ready(function(){
document.getElementsByClassName('canc_policy')[0].oncontextmenu = new Function ("return false");
});

$(document).ready(function()
{
$('.canc_policy').bind('click', function(e)
{
if (e.metaKey || e.ctrlKey )
{
e.metaKey = e.ctrlKey;
return false;
}
})

$(".canc_policy").mousedown(function(e) {
if( e.which == 2 ) {
alert("New Tab is not Allowed.");
return false;
}
});
});
</script>

但此脚本仅适用于第一个链接,其余 6 个链接右键单击有效。有没有什么方法可以在不创建唯一类的情况下禁用右键单击具有相同类的所有链接...

最佳答案

你可以这样做:

$(document).ready(function(){
$(".canc_policy").bind("contextmenu",function(){
return false;
});
});

document.getElementsByClassName('canc_policy')[0] 仅选择具有 canc_policy 类的第一个元素,因此仅对第一个链接禁用右键单击

关于javascript - 如何禁用js/jquery中同一类的所有链接的右键单击?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24038641/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com