检查是否单击了特定的标签

时间:2012-09-28 20:41:13

标签: javascript jquery

我该怎么做:

var izbor = $('.kategorija_izbor ul a'),
    mgl = $(".mali_oglasi"),
    pretraga = $('.mali_oglas a[role=pretraga]'),
    article = $('.mali_oglasi article'),
    mgl_wrapper = $('.mali_oglasi_wrapper');

(pretraga || izbor).on('click', function(e) {
    var id = $(this).attr('href').split('/'),
        mgl_space = $(this).attr('href').replace(/\s+/g, '-').toLowerCase();
    link = mgl_space + ' .mali_oglasi';
    mgl.animate({
        'opacity': 0
    }, 400, function() {
        mgl_wrapper.load(link, function() {
            mgl.animate({
                'opacity': 1
            }, 400);
        });
    });
    e.preventDefault();
});​

我需要查看是否按下 pretraga izbor 。这种方式不起作用。有没有办法实现它?

4 个答案:

答案 0 :(得分:5)

or运算符不能用于引用两个变量实例。

您要做的是将函数绑定到多个jQuery对象:

$('.kategorija_izbor ul a, .mali_oglas a[role=pretraga]').on('click',
    function(e) {
        var id = $(this).attr('href').split('/'),
            mgl_space = $(this).attr('href').replace(/\s+/g, '-').toLowerCase();
        link = mgl_space + ' .mali_oglasi';
        mgl.animate({
            'opacity': 0
        }, 400, function() {
            mgl_wrapper.load(link, function() {
                mgl.animate({
                    'opacity': 1
                }, 400);
            });
        });
        e.preventDefault();
    });​

答案 1 :(得分:0)

$('.mali_oglas a[role=pretraga], .kategorija_izbor ul a').on(...

答案 2 :(得分:0)

我修改了您的代码,您可以在点击功能中使用isPretraga变量来检查pretraga是否点击。

var izbor = $('.kategorija_izbor ul a'),
    mgl = $(".mali_oglasi"),
    pretraga = $('.mali_oglas a[role=pretraga]'),
    article = $('.mali_oglasi article'),
    mgl_wrapper = $('.mali_oglasi_wrapper');

$('.mali_oglas a[role=pretraga], .kategorija_izbor ul a').on('click', function(e) {
    var id = $(this).attr('href').split('/'),
        mgl_space = $(this).attr('href').replace(/\s+/g, '-').toLowerCase();
    var isPretraga = $(this).attr('role') == 'pretraga';
    link = mgl_space + ' .mali_oglasi';
    mgl.animate({
        'opacity': 0
    }, 400, function() {
        mgl_wrapper.load(link, function() {
            mgl.animate({
                'opacity': 1
            }, 400);
        });
    });
    e.preventDefault();
});​

答案 3 :(得分:0)

使用jQuery的parentsUntil函数。 http://api.jquery.com/parentsUntil/

因此,您可以在点击功能中看到,点击了这两个元素中的哪一个。

相关问题