首页 > JavaScript 这个代码,返回值 return false;是为了什么?

JavaScript 这个代码,返回值 return false;是为了什么?

初学者,这个代码,是之前别人告诉我的,我一句句学习了,
别的理解的差不多了,就是不懂为什么要有一个 返回值 false
他是干什么的?

if (window.Event) 
  document.captureEvents(Event.MOUSEUP); 

function nocontextmenu() 
{
    event.cancelBubble = true
    event.returnValue = false;

    return false;//★★★★★★★★★★★★★★
}

function norightclick(e) 
{
    if (window.Event) {
      if (e.which == 2 || e.which == 3)
       return false;
    } else if (event.button == 2 || event.button == 3){
           event.cancelBubble = true
           event.returnValue = false;
           return false;  //★★★★★★★★★★★★★★
      }

}

document.oncontextmenu = nocontextmenu;  // for IE5+
document.onmousedown = norightclick;  //for all others

事件处理函数中 return false 可以阻止部分默认行为


这个具体的用处得看它用在哪里!

一般情况下,这个return false; 表示“不做什么”


阻止事件的默认行为。


一般认为返回结果,终止执行


等价于event.preventDefault(),只是为了兼容老旧的浏览器

event.preventDefault()属于DOM 2标准,之前的浏览器得用return false来阻止默认事件。


这段代码的return false有点滥用了。

在事件方法中使用return false可以同时为止浏览器的默认事件以及事件冒泡,所以需要按需使用。 你这个例子应该就是这个目的。

在普通方法中使用return false,可以表示一个方法的返回结果


function nocontextmenu() 
{
    event.cancelBubble = true
    event.returnValue = false;

    return false;//★★★★★★★★★★★★★★
}

返回false是为了让document.oncontextmenu设置为false来禁用右键菜单

function norightclick(e) 
{
    if (window.Event) {
      if (e.which == 2 || e.which == 3)
       return false;
    } else if (event.button == 2 || event.button == 3){
           event.cancelBubble = true
           event.returnValue = false;
           return false;  //★★★★★★★★★★★★★★
      }
}

返回false是设置document.onmousedown = false来然让鼠标按键失效
其实nocontextmenu() norightclick(e) 这2个方法已经达到效果了,在设置这个属性无非就是效果更佳!

【热门文章】
【热门文章】