Javascript 如何以编程方式触发Twitter意图事件?
FacebookJSSDK相当于jQuery的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(),但它没有文档记录 除此之外,我不知道如何在代码中正确触发它,而不会引发错误 如
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元素(这对我的测试至关重要)。