click()或触发器('click')不起作用

时间:2011-10-17 14:05:34

标签: javascript jquery debugging

我正在使用jquery live方法作为锚元素,如果我单击锚点,则单击委托按预期工作。但是如果我通过触发click事件在调试控制台上尝试这个,它就永远不会起作用。请查看以下示例

<a href="#" id="test">click me</a>

$('#test').live('click',function(){
      alert('live click event');
});

如果我尝试在控制台上触发它,如下所示。它永远不会奏效。

$('#test').trigger('click');

有谁知道造成这个问题的原因是什么?

注意:Javascript控制台中没有错误。

1 个答案:

答案 0 :(得分:2)

我认为您的代码很好,因此以下其中一项可能是问题的原因:

  1. 如前评论中所述,您可能有另一个具有相同身份证明的标签(我知道情况并非如此,但如果其他人会阅读此内容,我们可以通过招募所有可以想象的人来帮助他们问题的原因)

  2. 您的页面上可能有一个删除标记的事件,因此当您尝试在控制台中查询它时,标记不再存在,在这种情况下,您尝试获取不存在的对象

  3. 给定的标签可能只在某个事件上创建,也可能在您尝试到达标签时尚未存在,因为触发它的事件尚未触发

  4. 您可能会遇到命名问题

  5. 如果以上都不符合您的情况,您应该尝试运行任何其他jquery命令。如果其他jquery命令也失败,则问题的根源可能不在您查找的位置。

    如果上述任何想法都没有帮助您,您可以考虑向我们提供有关系统结构(标记)和功能的更多详细信息。也许有人能够帮助你。