2

これどうやってするの:

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

4 に答える 4

5

or演算子を使用して、2つの変数インスタンスを参照することはできません。

代わりに、関数を複数の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();
    });​
于 2012-09-28T20:46:56.357 に答える
0

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

于 2012-09-28T20:45:13.613 に答える
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();
});​
于 2012-09-28T20:48:41.907 に答える
0

jQueryのparentsUntil関数を使用します。http://api.jquery.com/parentsUntil/

したがって、クリック機能で、2つの要素のどちらがクリックされているかを確認できます。

于 2012-09-28T20:54:37.820 に答える