找不到单击的元素

时间:2017-01-20 07:15:42

标签: jquery

我正在编写简短的jquery脚本:

$(document).ready(function (e) {
    $("#about, #services, #contact").click(function (e) {
        MoveToPage(e);
    })
});
function MoveToPage(e) {
    var del = e.delegateTarget;
    if (del == 'li#about') {
        alert('about')
    } else {
        //dosomething
    }
}

现在的目的是提醒点击了哪个链接。它不起作用。为什么?

2 个答案:

答案 0 :(得分:1)

event.delegateTarget返回对元素的引用。您可以使用它来使用字符串文字对其进行评估。

您可以使用.is()针对选择器检查元素。

function MoveToPage(e) {
    var del = e.delegateTarget;
    if ($(del).is('li#about')) {
        alert('about')
    } else {
        'something'
    }
}

您还可以使用其ID属性

if(e.delegateTarget.id == 'about')

答案 1 :(得分:1)

使用e.target.id获取点击的目标ID

这是你可以使用的js:

 $("#about, #services, #contact").click(function (e) {
    MoveToPage(e);
})

function MoveToPage(e) {
   if(e.target.id == 'about')
   {

   }
   else if(e.target.id == 'contact')
   {

   }
   else 
   {

   }
}

这里有小提琴

http://fiddle.jshell.net/UYMxa/280/