超链接和控制脚本流程没有挂在一起,所以不起作用return  false 提前中止程序向下执行

解决方案 »

  1.   

    1.链接默认的点击行为是转到地址href
    2.当触发时onclick首先调用window.location="http://google.cn"; ,所以一定会去google
    3.当return false时会取消链接的默认行为,即转向百度,结果就是转google了
    4.当不加return false,相当于return true, 所以触发链接默认的点击行为,即转到百度,此时,google在先百度在后,百度覆盖前面的google.如果用两个窗口看得更清楚。return false.对于事件而言,可用于取消事件的默认行为。
      

  2.   

    单击之后先执行函数中的代码,然后才会去处理单击的目标,但是由于函数中返回false中断了单击事件,所以就跳到google了。
    如果你这样写则不会有反应了。
    function initRedirect(){ 
    return false; 
    window.location="http://google.cn"; 
      

  3.   

    return false真的不好理解,原因是:
    在c或者vb中,如果函数使用了return 意味着函数返回值,同时函数也结束了,js中这个false值是传给谁?
    document.getElementById("baidu").onclick =initRedirect; initRedirect=false;
    所以document.getElementById("baidu").onclick =false,这样子就是链接失效了?发现这也好解释return在window.location="http://google.cn"之前链接不请作用,在后则转到google,没有则到百度的原因吧!不知道对不对  
      

  4.   

    return false也要看是在什么情况下,一般在判断比较时就是返回当前焦点或者当前事件
      

  5.   

    对于ie. 用于事件的return false实际上等于设置event.returnValue =  false