当用户尝试使用Ctrl + F或使用菜单项Find查找字符串时,我必须展开表的所有折叠行。我可以在用户按Ctrl + F时执行此操作,但在用户选择菜单项Find时不确定如何实现相同功能。
$('body').keydown(function(e){
if(e.ctrlKey && e.which == 70){
$(expandAll());
}
});
function expandAll() {
$("#resultDetails tr").each(function(){
if ($(this).hasClass('expand'))
$(this).removeClass('expand').addClass('collapse');
$(this).show();
});
}
Demo。如何捕获浏览器菜单项事件。
思考。
答案 0 :(得分:1)
只需运行如下函数:
$('body').keydown(function(e){
if(e.ctrlKey && e.which == 70){
expandAll(); //no need to use jQuery way
}
});
根据你的评论:
//run the function on click event:
$('.your-menu').on('click',expandAll);
答案 1 :(得分:1)
没有办法可以收听浏览器事件,你唯一可以做的就是你已经做过的事情,只订阅keyup和keydown事件。 你不能挂钩搜索浏览器功能。
答案 2 :(得分:0)
使用此javascript代码无需使用任何jquery
document.onkeydown = function (e) { // check ctrl + f key if (e.ctrlKey === true && e.keyCode === 70) { e.preventDefault(); //alert('Ctrl + f was hit...'); $(expandAll()); return false; }