Javascript 如何在js/jquery中禁用对同一类的所有链接的右键单击?
Rails 4+JS+jquery 如何禁用使用同一类的链接的右键单击Javascript 如何在js/jquery中禁用对同一类的所有链接的右键单击?,javascript,jquery,ruby-on-rails-4,Javascript,Jquery,Ruby On Rails 4,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"].oper
<% @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 %>
“web”、:action=>“get_cancellation_Policys”、:operator_id=>schedule[“bus_schedules”].operator_id}、:onclick=>”、:class=>“canc_policy”、:id=>“canc_policy”{schedule[“bus_schedules”].operator_id}、:remote=>true%>
假设@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>
$(文档).ready(函数(){
document.getElementsByClassName('canc_policy')[0]。oncontextmenu=新函数(“返回false”);
});
$(文档).ready(函数()
{
$('.canc_policy').bind('click',函数(e)
{
if(e.metaKey | | e.ctrlKey)
{
e、 metaKey=e.ctrlKey;
返回false;
}
})
$(“.canc_policy”).mousedown(函数(e){
如果(e.which==2){
警报(“不允许使用新选项卡”);
返回false;
}
});
});
但此脚本仅适用于第一个链接其余6个链接右键单击正在工作。
在不创建唯一类的情况下,是否有任何方法可以禁用同一类的所有链接…您可以执行以下操作:
$(document).ready(function(){
$(".canc_policy").bind("contextmenu",function(){
return false;
});
});
document.getElementsByClassName('canc_policy')[0]
只选择具有canc_policy
类的第一个元素,因此只有右键单击的第一个链接被禁用,您可以执行以下操作:
$(document).ready(function(){
$(".canc_policy").bind("contextmenu",function(){
return false;
});
});
$(document).ready(function () {
var elements = document.getElementsByClassName('canc_policy');
for (var i = 0; i < elements.length; i++) {
elements[i].addEventListener('contextmenu', function (e) { e.preventDefault(); }, false);
}
});
document.getElementsByClassName('canc_policy')[0]
只选择具有canc_policy
类的第一个元素,因此右键单击().ready(函数(){
$(document).ready(function () {
var elements = document.getElementsByClassName('canc_policy');
for (var i = 0; i < elements.length; i++) {
elements[i].addEventListener('contextmenu', function (e) { e.preventDefault(); }, false);
}
});
var elements=document.getElementsByClassName('canc_policy');
对于(var i=0;i
$(文档).就绪(函数(){
var elements=document.getElementsByClassName('canc_policy');
对于(var i=0;i
我得问问。。。为什么会有人想这样做?因为所有这些链接都是AJAX调用。如果有人将右键点击链接并在新标签中打开,那么它将崩溃…这就是我正在考虑禁用右键点击链接…如果有任何其他解决方案,请共享…我要问。。。为什么会有人想这样做?因为所有这些链接都是AJAX调用。如果有人将右键点击链接并在新标签中打开,那么它将崩溃…这就是我正在考虑禁用右键点击链接…如果有任何其他解决方案,请共享。。。