1

使用 Jquery,我怎么说(这是在 click() 函数中):

if(element clicked has an href == 'the href location'){

};

我正在使用这样的东西:

if ($(this).attr('href') == 'image.png') {
//Do Stuff
};

这不起作用,因为我发现 $(this) 指的是窗口。此外,我不知道如何使用 $(this) 特定于某些东西。

任何帮助,将不胜感激。

4

2 回答 2

1

如果您只想在满足此条件的元素上触发点击事件,请使用:

 $('a[href="image.png"]').click(function(e)
 {
 });

如果您想在选择器的所有元素上触发单击事件,但如果它们具有特定的 href,则执行一些特殊的操作,那么您做对了, $(this)仅在事件回调中引用单击的元素。

 $('a').click(function(e)
 {
     if ($(this).attr('href') == 'image.png') { ... }; // it works within this function
 });
于 2013-02-09T01:51:01.283 回答
0

你在寻找这样的东西吗?

这是工作的jsFiddle。

$(document).ready(function() {
    $('img').click(function() {
        var target = $(this).attr('src');

        if( target === 'http://www.mallorcaweb.net/masm/Planetas/Jupiter.jpg' ) {
            alert('you have found it!');
        }else{
            alert('wrong one..');
        }
    });

});
于 2013-02-09T01:53:56.707 回答