例如
<html>
..
<textarea id="area"></textarea>
..
</html>想选择除textarea外的所有元素谢谢

解决方案 »

  1.   

    $("*:not(#area") or
    $("*).not($("#area"))
      

  2.   


    不行的,试了很久我的代码有包含关系
    <html>
    ..
    <div id="div1">
    <textarea id="area"></textarea>
    </div>
    ..
    </html>不知道是不是因为这个原因导致$("*:not(#area)").click(function(){
    alert("*****");
    });
    在点击textarea时依然弹出提示框
      

  3.   

    那是事件冒泡的原因。。
    $(document).click(event){
    if(!event.target.is('#area')){
    alert('************');
    }
    });
      

  4.   

    根据楼主的'特殊'需求写了个自己看着都别扭(但是有效)的丑陋jq code:
    <html>
    <head>
    <script src='http://code.jquery.com/jquery-latest.js'></script>
    <script>
    $(function(){
    var $wori=$('body :not(:has(#area),#area)')
    $wori.each(function(){
    alert($(this).attr('id'))
    })
    })
    </script>
    </head>
    <body>
    <div id='a'>123</div>
    <div id='b'>456</div>
    <div id="div1">
    <textarea id="area"></textarea>
    </div>
    </body>
    </html>
      

  5.   

    比如你给body绑定一个click事件,然后点击了body里的一个div,理想情况应该只响应div的事件,结果却是事件冒泡到了body,响应了click事件,必须在div的click事件(如果有)里阻止冒泡:e.stopPropagation()
      

  6.   

    给全局加上onclick事件,然后专门给textarea区域添加onclick事件,里面什么也不行,不就行了么?还有,楼主,去看看冒泡事件,基础的都不知道
      

  7.   


    $("#area").click(function(event){
    event.stopPropagation();//阻止冒泡
    });