Jquery点击是有界的,但没有在点击时触发

时间:2014-04-27 22:05:01

标签: javascript jquery html click

我得到了这段代码

<div id="boxInformacion" class="alert-box success"><span>some text</span></div>

和某些.js文件

var c = $('#boxInformacion');

c.on('click', function(){
    // some code
});

setTimeout(function(){
    c.click();
}, 9999);

(点击事件中的功能稍微复杂一点,所以它简化了)

此代码在ajax调用后成功执行。 问题是我点击div但没有任何反应。 我把超时只用于检查绑定是否正确,是的,在9秒之后点击被javascript触发并且正在工作。 div #boxInformacion是所有HTML中唯一拥有该ID的人。

由于超时中的点击工作正常,这似乎是手动点击的一些错误。 我从控制台检查了一下,然后点击了正确的位置。 我能错过什么?

我点击绿色栏。

我也尝试使用c.click(function(){ /* code */})代替.on('click', function(){ /* code*/ })

enter image description here

我正在使用jQuery 1.10.2

小提琴here

2 个答案:

答案 0 :(得分:4)

您的点击处理程序没问题。问题是你的CSS:

z-index:-100;

由于负z-index,点击处理程序不会触发。删除它,你的点击处理程序工作。

Updated fiddle

答案 1 :(得分:-2)

我测试了你的代码,它运行得很好。

 <script>
 $(document).ready(function(){
     var c = $('#boxInformacion');

     c.on('click', function(){
       alert(1);
     });

  })
 </script>

,这在body标签

<div id="boxInformacion" class="alert-box success"><span>CLICK</span></div>