如何在点击页面上的内容时发现调用的JavaScript函数?

时间:2010-08-28 19:59:32

标签: javascript html greasemonkey

我正在尝试解构部分Gmail,并且在点击特定按钮时似乎无法找到正在发生的事情(调用了哪些功能)。

我使用了谷歌浏览器的检查员,并找到了按钮的HTML:

<tbody id=":8y" class="vC " idlink="" role="option" aria-labelledby=":8x :8w"><tr class="vI"><td><img class="vt SFzvCe IRnhDe BUw1sf" id=":8x" src="images/cleardot.gif" alt="Call phone"></td><td id=":8v" class="vr" colspan="2"><span id=":8w" class="HHshnc ">Call phone</span></td></tr></tbody>

在“点击”下的检查员的“事件监听器”部分中,我收到了以下信息:

isAttribute: false
lineNumber: 213
listenerBody: function B(H){return g.call(B.src,B.key,H)}
node: tbody#:8y
sourceName: https://mail.google.com/mail/u/0/?ui=2&view=js&name=main,tlist&ver=q0qiADndhKA.en.&am=!k3sV9...
type: click
useCapture: true

但这并没有帮助我理解onClick上的内容。

我要做的是创建一个Greasemonkey脚本,当该页面上不存在时,会将此按钮添加到Gmail。

TIA!

1 个答案:

答案 0 :(得分:1)

function B(H){return g.call(B.src,B.key,H)}

显然只是一个调用g的包装函数。 Function.call

  

[c]所有具有给定this值的函数和单独提供的参数。

正如您可以在链接的MDC页面上阅读的那样,第一个参数是this内的g对象,在本例中为B.src。第二个和第三个参数作为参数传递给g

因此,您必须寻找名为g的函数。 toString方法可能会有所帮助。

也就是说,考虑到你想要达到的目标(“创建一个Greasemonkey脚本,当它在页面上不存在时将该按钮添加到Gmail”),我认为这不值得你花时间。如果按钮不存在,我怀疑它不存在是有原因的(例如,g在该页面上没有可用,或者某些其他后端功能。)