单击div中的任何锚标记时调用函数

时间:2013-09-04 13:41:11

标签: javascript jquery html

我有一个像

这样的菜单
<div class="nav_bar" style="background: url(../images/nav.jpg) repeat scroll 0px 0px transparent;">
            <div id="navID" class="ddsmoothmenu">
                <ul id='Ul2'>
                            <li id='Li6'><a href="inner.php" title="Home">Home </a>  
                            </li>
                  </ul>
               <ul id='Ul4' >
               <li id='Li1' ><a href="#" title="Master">Car </a>    
                <ul>
                    <li id='Li10'><a href="#" title="Plan Type">Fuel</a>
                    <ul>                                  
                        <li id='Li10' ><a href="Petrol.php" title="Petrol">Petrol  </a> </li>
                        <li id='Li10' ><a href="Diesel.php" title="Diesel">Diesel  </a></li>                                   </li>
                    </ul>
                    </li>
                 </ul>
                  </li>

              </div>
  </div>

是否可以调用事件或函数来点击div nav_bar中的任何锚标记? 我试过了

$(".nav_bar #navID").click(function(e) {
    alert("hai");
     });  

但它不起作用

提前致谢

4 个答案:

答案 0 :(得分:1)

你很亲密。只需将a添加到选择器即可选择锚标记。

$("#navID a").click(function(e) {
    alert("hai");
}); 

因为看起来所有的锚标签都在ID为navID的div中,所以您可以将其用作父选择器。使用ID比使用类更快。

答案 1 :(得分:1)

由于你的nav_bar是一个类,而不是一个ID,你应该这样做:

$('.nav_bar a').click(function(){
    alert("clicked");
});

工作小提琴:http://jsfiddle.net/gS3KJ/

答案 2 :(得分:0)

假设您使用的是足够现代的jQuery版本:

$('.nav_bar').on('click', 'a', function() {
    // do stuff
});

答案 3 :(得分:-1)

$("#nav_bar a").on('click', function(e) {
    alert("hai");
    return false;
});