当点击页面上的某个内容时,如何发现调用了什么JavaScript函数?
我试图解构Gmail的一部分,但似乎无法找到当点击某个特定按钮时发生了什么(调用了什么函数) 我使用Google Chrome的inspector找到了按钮的HTML:当点击页面上的某个内容时,如何发现调用了什么JavaScript函数?,javascript,html,greasemonkey,Javascript,Html,Greasemonkey,我试图解构Gmail的一部分,但似乎无法找到当点击某个特定按钮时发生了什么(调用了什么函数) 我使用Google Chrome的inspector找到了按钮的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" s
<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>
但这并不能帮助我理解什么叫onClick
我想做的是创建一个Greasemonkey脚本,当这个按钮在页面上不存在时,它会将它添加到Gmail中
蒂亚
显然,它只是一个调用g
的包装函数
[c] 使用给定的此值和单独提供的参数调用函数
正如您在链接的MDC页面上看到的,第一个参数是g
中的this
对象,在本例中为B.src
。第二个和第三个参数作为参数传递给g
因此,您必须查找名为g
的函数。这种方法可能会有帮助
也就是说,考虑到你想要达到的目标(“创建一个Greasemonkey脚本,当这个按钮在页面上不存在时,它会添加到Gmail中”),我认为这不值得你花时间。如果按钮不存在,我怀疑它不存在是因为某种原因(例如,g
在该页面上不可用,或者其他一些后端函数)。那么“函数B(H){returng.call(B.src,B.key,H)}”做什么呢?不确定,但在任何情况下都不是对函数的调用(这是函数本身)。我正在尝试重新创建按钮,因此我需要类似onClick=“B(something)”的东西来调用该函数(我假设)。我找不到有关listenerBody含义的任何信息。我认为listenerBody是在单击按钮时调用的函数。祝你好运,B.key,我很确定它对每个用户都是唯一的。我不太确定我理解你对toString的意思。我很肯定它会起作用的。该按钮不在页面上的原因是,该功能在某些国家/地区不可用。在离开该国之前,我打开了一个浏览器窗口,其中包含了该功能。当我着陆时,该按钮继续工作(在该国不可用)。@Guy–您是否遵循了(我知道很难看到它是一个链接)?只要在控制台中调用类似于g.toString()
的函数,您就会看到g
的内容。然后可以使用重新格式化函数。
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
function B(H){return g.call(B.src,B.key,H)}