.Ён () падзея MouseEnter працуе, але не працуе націсніце JQuery 2

Мой розум дзівілі. Можа хто-небудзь сказаць мне, чаму гэта працуе з «MouseEnter», але не з «націсніце»?

http://jsfiddle.net/jxUGw/3/

//////THIS DOESNT WORK
$('#view_panel').on('click', 'img.main_image', function(){
    $(this).parent().find('div.image_box').show();
});

$('#view_panel').on('click', 'img.main_image', function(){
    $(this).parent().find('div.image_box').hide();
});


/////THIS WORKS
$('#view_panel').on('mouseenter', 'img.main_image', function(){
    $(this).parent().find('div.image_box').show();
});

$('#view_panel').on('mouseleave', 'img.main_image', function(){
    $(this).parent().find('div.image_box').hide();
});
1
Вы прызначаючы два пстрычкі падзеі, першы, які паказвае ваша акно выявы і другі, які хавае яго. Яны, верагодна, адбываецца так хутка, што, як уяўляецца, не будзе працаваць. Вы павінны змяніць гэта, каб быць адна падзея клік, які перамыкае бачнасць.
дададзена аўтар Cᴏʀʏ, крыніца

6 адказы

Другая падзея звязваючыся адразу страляць пасля таго, як першы. Такім чынам, DIV будзе хаваючыся, як толькі гэта паказана на малюнку.

Паспрабуйце выкарыстоўваць тумблер() замест гэтага.

3
дададзена
Мець скрыпку свой адказ: jsfiddle.net/jxUGw/5
дададзена аўтар tymeJV, крыніца

Другая падзея звязваючыся адразу страляць пасля таго, як першы. Такім чынам, DIV будзе хаваючыся, як толькі гэта паказана на малюнку.

Паспрабуйце выкарыстоўваць тумблер() замест гэтага.

3
дададзена
Мець скрыпку свой адказ: jsfiddle.net/jxUGw/5
дададзена аўтар tymeJV, крыніца

Другая падзея звязваючыся адразу страляць пасля таго, як першы. Такім чынам, DIV будзе хаваючыся, як толькі гэта паказана на малюнку.

Паспрабуйце выкарыстоўваць тумблер() замест гэтага.

3
дададзена
Мець скрыпку свой адказ: jsfiddle.net/jxUGw/5
дададзена аўтар tymeJV, крыніца

Гэта не тое, што ён не працуе, вы проста выклікаеце як функцыю пры націску кнопкі.

Паспрабуйце, што (функцыя 1 клік) замест:

$('#view_panel').on('click', 'img.main_image', function(){
    $(this).parent().find('div.image_box').toggle();
});
1
дададзена

Гэта не тое, што ён не працуе, вы проста выклікаеце як функцыю пры націску кнопкі.

Паспрабуйце, што (функцыя 1 клік) замест:

$('#view_panel').on('click', 'img.main_image', function(){
    $(this).parent().find('div.image_box').toggle();
});
1
дададзена

Гэта не тое, што ён не працуе, вы проста выклікаеце як функцыю пры націску кнопкі.

Паспрабуйце, што (функцыя 1 клік) замест:

$('#view_panel').on('click', 'img.main_image', function(){
    $(this).parent().find('div.image_box').toggle();
});
1
дададзена