jQuery触发器不能在锚链接中工作(其他jQuery操作吗)?

时间:2012-12-13 10:09:34

标签: jquery wysihtml5

我正在使用这个编辑器:http://xing.github.com/wysihtml5/examples/simple.html(现场演示)。

您可以为活动分配自定义功能:

"events": {
  "focus": function() {
    //my event
  }
},

我添加了一个自定义按钮:

"font-styles": function(locale, options) {
  return "<li>" +
    "<a class='btn btn-paragraph' data-wysihtml5-command='formatBlock' data-wysihtml5-command-value='p'>" + locale.font_styles.p + "</a>" +
  "</li>";
}

所以,我想触发焦点上的按钮(textarea):

"events": {
  "focus": function() { 
    $('.btn-paragraph').trigger('click');
  }
},

但没有任何反应,甚至在控制台中都没有错误。奇怪的是我尝试过这个:

"events": {
  "focus": function() { 
    $('.btn-paragraph').hide();
  }
},

一旦我将光标聚焦在textarea中,按钮就会隐藏。

我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

trigger将触发绑定到click事件的所有事件处理程序。它不会模拟用户交互。由于你没有绑定任何事件处理程序(至少从我能看到的),没有任何反应。

试试这个:

"events": {
  "focus": function() { 
    $('.btn-paragraph').click(function(){
        alert('foo');
    });
    $('.btn-paragraph').trigger('click');
  }
},