如何检测哪个动作关闭了彩盒

时间:2013-11-26 17:53:44

标签: jquery colorbox

我们如何检测哪个动作关闭了彩盒?我想仅在用户通过单击右上角的关闭图标(而不是通过按下转义键)关闭彩色框时才运行特定代码。

我已经使用jQuery在页面加载时打开我的颜色框。下面我使用onClosed事件来检测使用了哪个键。然而,即使我按下Escape键关闭颜色框,它也显示错误'无法读取属性'未定义的'keycode'。

 $(document).ready(function() 
{
  $.colorbox({href:'#my_hidden_div', inline:true, width:'500px', height:'500px', 
                onClosed:function(e){
                   alert(e.keycode); // not showing value even for Esc key!
                 }
              });
});

首先,在上面的例子中,我试图读取密钥代码以检测哪个密钥用户已按下以关闭它。

以下是我的示例fiddle

1 个答案:

答案 0 :(得分:2)

我会尝试检查点击的目标,如下所示:

 $.colorbox({href:'#my_hidden_div', inline:true, width:'500px', height:'500px', 
            onClosed:function(e){
               var closeBtn = document.getElementById( 'your close buttons id' );
               if ( e && e.target && e.target === closeBtn ) {
                 // do something
               }
             }
          });