Javascript 如何以编程方式触发Twitter意图事件?

Javascript 如何以编程方式触发Twitter意图事件?,javascript,events,testing,twitter,qunit,Javascript,Events,Testing,Twitter,Qunit,FacebookJSSDK相当于jQuery的trigger()函数,FB.Event.fire 它允许您触发为特定事件附加的处理程序。这对我在QUnit中的单元测试很有帮助。它的工作原理基本上和你期望的一样FB.Event.fire(“comment.create”,location.href)为注释触发我的处理程序。创建事件 对于Web意图,twttr似乎有类似的东西,twttr.events.trigger(),但它没有文档记录 除此之外,我不知道如何在代码中正确触发它,而不会引发错误 如

FacebookJSSDK相当于jQuery的
trigger()
函数,
FB.Event.fire
它允许您触发为特定事件附加的处理程序。这对我在QUnit中的单元测试很有帮助。它的工作原理基本上和你期望的一样<代码>FB.Event.fire(“comment.create”,location.href)
注释触发我的处理程序。创建
事件

对于Web意图,
twttr
似乎有类似的东西,
twttr.events.trigger()
,但它没有文档记录

除此之外,我不知道如何在代码中正确触发它,而不会引发错误

如何以编程方式测试附加到此对象的处理程序

对于类似以下代码:

twttr.events.bind("click", function(intent){
    console.dir(intent);
});
我希望能够通过如下操作触发它:
twttr.events.trigger(“单击”)

我尝试的每件事都会导致错误,我无法破译错误


我在JSFIDLE上提供了一些基本代码:

你好,Yahel,问得好

如果您将其称为:

twttr.events.trigger("click", {});
它需要第二个参数,即传递回回调的对象。当它自然发生时,此对象将填充其他参数

{target: b,region: "intent",type: "click",data: {}}
如果像我建议的那样传递一个空对象,它也会工作,但是在回调中,您只接收带有
type
属性的对象,因为这是由触发器添加的

这正是您在未传递第二个参数时触发的错误。它尝试将
type
参数添加到
undefined
中,然后消失。

Nice。谢谢你,爱德华多。作品似乎
target
应该是Twitter iframe的DOM元素(这对我的测试至关重要)。