刚才写错了如何用js来实现不让用户选中web页中的内容(文字内容),文本框除外

解决方案 »

  1.   

    1.试试下面的<html>
    <head>
    <script language="JavaScript">
    <!--
    function checkSelect(){
    var eTagName = event.srcElement.tagName;
    if (eTagName != "TEXTAREA" && eTagName != "INPUT")
    return false;
    else
    return true;
    }
    //-->
    </script>
    </head><body onselectstart="return checkSelect();">
    <p>fsdfsadf</p>
    <p>fsad</p>
    <p>fsad</p>
    <p>asdf</p>
    <p>asdf</p>
    <p>asdfasdfasdfsadf<br>
      asdfafadsfsadfasdfasdfasdfasdf</p>
    <p>
      <textarea name="textfield" cols="40" rows="5"></textarea>
    </p>
    </body>
    </html>2. try ... catch ... finally
    以下摘自微软的JScriptV5.5文档try...catch...finally 语句
    为 JScript 实现错误处理。 try {
       tryStatements}
    catch(exception){
       catchStatements}
    finally {
      finallyStatements}参数
    tryStatement必选项。可能发生错误的语句。exception可选项。任何变量名。exception 的初始化值是扔出的错误的值。catchStatement可选项。处理在相关联的 tryStatement 中发生的错误的语句。finallyStatements可选项。在所有其他过程发生之后无条件执行的语句。说明
    try...catch...finally 语句提供了一种方法来处理可能发生在给定代码块中的某些或全部错误,同时仍保持代码的运行。如果发生了程序员没有处理的错误,JScript 只给用户提供它的普通错误消息,就好象没有错误处理一样。tryStatements 参数包含可能发生错误的代码,而 catchStatement 则包含处理任何发生了的错误的代码。如果在 tryStatements 中发生了一个错误,则程序控制被传给 catchStatements 来处理。exception 的初始化值是发生在 tryStatements 中的错误的值。如果错误不发生,则不执行 catchStatements。如果在与发生错误的 tryStatements 相关联的 catchStatements 中不能处理该错误,则使用 throw 语句来传播、或重新扔出这个错误给更高级的错误处理程序。在执行完 tryStatements 中的语句,并在 catchStatements 的所有错误处理发生之后,可无条件执行 finallyStatements 中的语句。请注意,即使在 try 或 catch 块中返回一个语句,或在 catch 块重新扔出一个错误,仍然会执行 finallyStatements 编码。 一般将确保 finallyStatments 的运行,除非存在未处理的错误。(例如,在 catch 块中发生运行时错误。)。示例
    下面的例子阐明了JScript 特例处理是如何进行的。 try {
      print("Outer try running..");
      try {
        print("Nested try running...");
        throw "an error";
      }
      catch(e) {
        print("Nested catch caught " + e);
        throw e + " re-thrown";
      }
      finally {
        print("Nested finally is running...");
      }   
    }
    catch(e) {
      print("Outer catch caught " + e);
    }
    finally {
      print("Outer finally running");
    }
    // Windows Script Host 作出该修改从而得出 WScript.Echo(s)
    function print(s){
       document.write(s);
    }
    将得出以下结果:Outer try running..
    Nested try running...
    Nested catch caught an error
    Nested finally is running...
    Outer catch caught an error re-thrown
    Outer finally running
      

  2.   

    1.另外可以屏蔽鼠标按键(这个方法没有楼上那种好),这个做的比较好的你看看下面这个地方的论坛www.ommo.com不过还是可以通过查看HTML文档代码来找到页面文字;
    2.try{}catch{},楼上的已经很清楚了~
      

  3.   

    balloy 的方法有一个问题:当先选中文本框的内容,按住鼠标拖,依然可以选中其他非文本框中的内容.
    如何解决这个问题!!!!!
      

  4.   

    我的Ie没有这个问题呀,我的是Ie5.0