Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery die()不起作用_Javascript_Jquery_Hta - Fatal编程技术网

Javascript jQuery die()不起作用

Javascript jQuery die()不起作用,javascript,jquery,hta,Javascript,Jquery,Hta,由于我正在创建HTA代码,我一直使用IE: 我们需要在元素中捕获更改事件,但是猜猜看,IE不支持该事件 所以我创造了一种模仿它的方法。当它被激活时,点击下面的显示。那部分很好用。问题是,我想在用户在select外部单击时隐藏select 我试图抓住身体上的点击,第一次效果很好,但第二次选择被隐藏时,请尝试离开 下面是代码的简化版本: $('.product').live('click',function(){ // Show the <select id="select">

由于我正在创建HTA代码,我一直使用IE:

我们需要在元素中捕获更改事件,但是猜猜看,IE不支持该事件

所以我创造了一种模仿它的方法。当它被激活时,点击下面的显示。那部分很好用。问题是,我想在用户在select外部单击时隐藏select

我试图抓住身体上的点击,第一次效果很好,但第二次选择被隐藏时,请尝试离开

下面是代码的简化版本:

$('.product').live('click',function(){
    // Show the <select id="select"> code goes here

    // this is the event to close the select
    $('body').die().live('click', function(){ $('#select').fadeOut(250); return;});

    // get the click on the select element
    $('#select').die().live('click',function(){
       // kill the close the select
       // THIS IS THE .die() THAT DOES NOT WORK
       $('body').die();

});
问题:
这个代码有什么问题吗?还是有更好的方法?记住,我被IE.

卡住了,为了使骰子正确运作,使用它的选择器必须与最初使用的选择器完全匹配。Live .< /P> < P> Internet Explorer 7和UP,可能是6,因为IE7主要是带有口红的IE6,但是我不能很容易地测试支持更改事件。是一个带有非常简单的演示的JSFIDLE


IE在事件中做了一些奇怪的事情,这绝对是真的。例如,至少在其他方面不会出现变化,但jQuery会为您提供相应的补丁。还有一个经典问题是复选框和单选按钮,它们在失去焦点之前不会触发更改,这使得它们基本上没有用处。对于这些,我发现单击可以很好地工作。

Wha已经检查过,请参见示例如果您调用$demo.liveclick,单击即可;然后骰子必须被称为$demo.dieclick,click做这个;而不是去死;尤其是在处理IE兼容性问题时。无论如何,试着使用jQuery1.7和.on和.off,他们说它的IE兼容性在InternetExplorer7和更高版本上有了很大的提高,至少支持更改事件@你能不能把它写进一个答案,这样我就可以投票支持你了。你应得的,我学校。哈哈肯定!等一下。。。