右键单击时重定向Javascript

时间:2013-09-15 22:03:19

标签: javascript

当一个人点击右键时,如何进行javascript重定向?它甚至可能吗?

    var message="MESSAGE TO USER"

    function clickIE4(){
if (event.button==2){
alert(message); 
window.open("site.com/whatever.php");
return false;
}
}

function clickNS4(e){
if (document.layers||document.getElementById&&!document.all){
if (e.which==2||e.which==3){
alert(message);
window.open("site.com/whatever.php");
return false;
}
}
}

if (document.layers){
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=clickNS4;
}
else if (document.all&&!document.getElementById){
document.onmousedown=clickIE4;
}

document.oncontextmenu=new Function("alert(message);return false")

我正在尝试插入window.open(“site.com/whatever.php”);进入剧本但没有成功。

修改

我希望在警报框关闭时进行重定向。很抱歉没有说清楚。

2 个答案:

答案 0 :(得分:0)

我认为你需要使用带协议的完整URL:

window.open('http://www.google.com');

右键点击问题已在此处得到解答:

Is right click a Javascript event?

答案 1 :(得分:0)

更改

if (document.layers){
  document.captureEvents(Event.MOUSEDOWN);
  document.onmousedown=clickNS4;
}
else if (document.all&&!document.getElementById){
  document.onmousedown=clickIE4;
}

if (document.layers){
  document.captureEvents(Event.MOUSEDOWN);
  document.onmousedown=clickNS4;
}
else if (document.all&&!document.getElementById){
  document.onmousedown=clickIE4;
}
else { 
  document.onmousedown = function (e) {
  if (e.button == 2)
  {
      alert("Ouch! that hurts. Please do not right click!");
      setTimeout(function() { location.href="http://www.google.com/"; }, 500);
  }
 }
}