2010-12-11 83 views
0

我在WordPress中创建了一些ajax分页评论。不幸的是,如果用户点击了回复按钮,然后点击另一个评论页面,则评论表单消失得无影无踪。从jQuery调用已定义的.onClick()函数

无论如何,简单的问题:每当用户点击一个新的ajax页面时,触发我的代码中的“取消回复”功能将通过使表单跳回原始位置来有效解决问题。

如何轻松从我自己的代码中触发cancel.onclick()?我只是复制命令并创建一个新函数,但认为可能有更简单的方法来节省几个字节!

这里的源代码: http://core.trac.wordpress.org/browser/trunk/wp-includes/js/comment-reply.dev.js

回答

1

尝试是这样的:

$('#id_of_your_cancel_button').click(); 
// same thing as $('#id_of_your_cancel_button').trigger('click'); 

如果“取消”的逻辑是在多种环境中使用,也许这将是最好的,如果它生活在它自己的命名函数声明,而不是你的例子中的匿名函数表达式。这将使你做这样的事情的选项:

function myCancelCode(){ 
    do_stuff(); 
} 

然后在您的addComment对象:

cancel.onclick = myCancelCode; 

,并从其他地方:

if(somethingHappens){ 
    myCancelCode(); 
}