jquery,如何选择none?

时间:2011-02-25 05:34:36

标签: jquery jquery-selectors

我有一个带图标的网站。每个图标都是可点击的。

如果单击图标,则会选中它(带边框)。

如何定义无选择?也就是说,选择没有我要点击空白点的图标..

想想windows桌面,你可以点击图标然后选择它,如果点击背景幕,所有选择都消失了..

我尝试选择正文$('body'),但它会覆盖div点击功能并取消它。

有人有想法吗?

由于

3 个答案:

答案 0 :(得分:3)

在重新阅读您想要的内容后编辑下面的代码:


这样的事情应该有效:

<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.0/themes/base/jquery-ui.css" />
<style>
#main { width: 130px; background:red; margin:20px;  }
        #main .icon { padding:10px; float:left; width:40px; }          
</style>
<div id="main">
        <div class="icon"><img src="/icons/accept.png"></div>
        <div class="icon"><img src="/icons/add.png"></div>
        <div class="icon"><img src="/icons/anchor.png"></div>
        <div class="icon"><img src="/icons/application_add.png"></div>
        <div class="icon"><img src="/icons/application_edit.png"></div>

    </div>

        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
        <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.0/jquery-ui.min.js"></script>
        <script language="javascript">
        $('#main .icon img').click(function() {
            $(this).parent().css('background', '#ccc'); 
            return false;
        });
        $('#main').click(function() { 
            $('#main .icon').each(function() {
                $(this).css('background', '#fff');
            });

            return false;
        });

        </script>

答案 1 :(得分:0)

这可能就是你所追求的,在主体上定义一个点击处理程序,所有点击都会冒泡到。

$('body').click(function(e) {
   if ($(e.target).hasClass('icon')) {
      //select icon
   }
   else {
      //clear selection
   }
});

答案 2 :(得分:0)

如果有人通过问题标题来到这里......你只想要一个空的jQuery对象,这就是你想要的:

$() 

pre jQuery 1.4这个效果最好:

$([])

Empty Selector In Jquery