标题大了...<script language=JavaScript>
function disablekey()
{
   if((window.event.shiftKey)&&(window.event.srcElement.tagName=="A"))
   {event.returnValue=false;}
}
</script>
<body onkeydown="disablekey()">这段代码无法在表单中实现"shift+左键"屏蔽的功能,怎么办?你们遇到过吗?

解决方案 »

  1.   

    那是因为你window.event.srcElement.tagName=="A"的缘故,请尝试如下代码:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="">
    <META NAME="Keywords" CONTENT="">
    <META NAME="Description" CONTENT="">
    <script language=JavaScript>
    function disablekey()
    {
       if((window.event.shiftKey)&&(window.event.srcElement.tagName=="TEXTAREA"))   
       {
       event.returnValue=false;
       }
    }
    </script>
    <body onkeydown="disablekey()">
    </HEAD>
    <TEXTAREA NAME="" ROWS="" COLS=""></TEXTAREA>
    <BODY></BODY>
    </HTML>
      

  2.   

    对不起,我没说清楚,
    我要屏蔽的对象是<a>,不是<textarea>的选择文本效果.如果是<a>,我这样写应该没有错啊,
    为什么老是达不到目的呢?
    请指教!
      

  3.   

    我真的很需要一个可以屏蔽shift+左键屏蔽弹出窗口的方法,
    谁有好的方法?
      

  4.   

    就算这样禁用了,你还是没办法禁用右键菜单中的在新窗口中打开连接,没法禁用非IE浏览器的始终在新窗口中打开的功能。
    再说,这个问题实在是太好解决了,以至于没人去研究怎么屏蔽超级链接的这个功能,而是直接弄一个假的超级链接放在那里:<span style="cursor: hand;" onclick="window.location=1.htm">
      

  5.   

    可以禁用右键菜单打开新窗口啊........
    但是我觉得楼上的说的很对,
    js的屏蔽功能写的再好,被人禁用客户端脚本也就失效了.
    但是js还是要用的,至少有一定的屏蔽作用.顺便说下,你让我用的<span>方法,我用不了,因为我的<a>是放在一个框架(frame)中,
    跳转的目标是另外一个框架(frame),如果我用了window.location,就没办法让
    点击的页面在另外一个框架中打开了,
    期望你的解决办法!
      

  6.   

    parent指当前框架的父框架,frames["name"]指子框架。自己多试几次吧:例如,在一个框架中引用另一个同级的框架:parent.frames["main"].form1.text1.value = "aaa";
    parent.frames["main"].location="1.htm";frames["name"]里面的name指<frame name="xxxx">中的xxxx。
    另外说一下,window.location这个也是JS,如果完全屏蔽JS,这个也用不了,但是一般不会完全屏蔽JS,只是有选择性的屏蔽弹窗等(完全屏蔽JS估计没几个网站能看了)。屏蔽右键菜单不是解决方案,只是多个事出来,影响了正常的功能,还不说并不是所有的浏览器都支持你的屏蔽右键的脚本。
      

  7.   

    谢谢楼上!
    这个问题算是有解决办法了!但是我的这个web应用程序中的所有链接都要用<span>来完成了,
    我有点不想这样....
    有没有可以用在<a>上的方法?