将click事件附加到HTML中的span标记?

时间:2010-05-05 16:46:29

标签: jquery

我的div包含许多spans,其中每个span都包含一个href

如何将点击事件附加到a代码?

2 个答案:

答案 0 :(得分:5)

您的live选择器将div span a(位于a内某处的span内的某个div。 E.g:

$('div span a').live('click', function() {
  // ...
});

如果您想将其限制为 a span 直接孩子 div这是直接子女<{1>}的div > span > adiv span > a a span div div #the_id_of_the_div {{1}}的任何地方{{1}} 1}}等。)。

如果您只想为一个特定div执行此操作,请将上面的{{1}}替换为{{1}}(或任何其他将识别该特定div的选择器)。

答案 1 :(得分:5)

如果OP调用了大量锚点(a或“hrefs”),那么使用事件委托编写可能会更好:将一个click侦听器附加到父div,在回调中,找出最初解雇该事件的a

$('#yourDiv').click(function (event)
{
    var $target = $(event.target);
    if($target.is('div>span>a')
    {
        // your callback logic here, where you can consider
        // $target to be analogous to $(this) in a non-delegated handler
    }
});