gpt4 book ai didi

javascript - 谷歌音乐测试版 : Thumbs Up and Down Now Playing using Javascript

转载 作者:搜寻专家 更新时间:2023-11-01 04:11:21 25 4
gpt4 key购买 nike

我正在为 Google Chrome 开发我的第一个扩展程序。我希望能够使用我的扩展点击 Google Music Beta 页面上的“Thumbs Up”按钮。出于某种原因,点赞按钮似乎比随机播放、重复播放、播放、下一个和上一个复杂得多。对于所有这些,以下代码有效:

chrome.tabs.executeScript(tab_id,
{
code: "location.assign('javascript:SJBpost(\"" + command +
"\");void 0');",
allFrames: true
});

其中 command="playPause"、"nextSong"、"prevSong"、"toggleShuffle"、"togglePlay"等

我想出了很多使用开发人员工具跟踪堆栈跟踪并查看提供给 SJBpost 的参数。使用“thumbsUp”尝试 SJBpost 会返回错误。

显然这个问题将仅限于一小部分人,因为不是每个人都能够查看 Google 音乐的来源,但如果你能帮助我,我将不胜感激。

Google 音乐页面上竖起大拇指的 div 如下所示:

<div id="thumbsUpPlayer" class="thumbsUp" title="Thumbs up"></div>

现在,我已经尝试使用 jQuery 来做到这一点:

$("#thumbsUpPlayer").click()

但我在 javascript 控制台中收到 TypeError, undefined_method 消息。

如有任何帮助,我们将不胜感激。我是 javascript 和插件以及所有这些东西的初学者,我很高兴能将这些扩展的最后部分放在一起。

谢谢!

最佳答案

Google Music Beta 似乎并没有真正监听 click() 事件本身,而是基于通常在实际点击事件之前发生的事件:mouseover、mousedown 和鼠标弹起。

我不是 jQuery 专家,所以我不明白为什么 $("#thumbsUpPlayer").mouseover().mousedown().mouseup() 不起作用(也不执行 .trigger)。

无论如何,这里有一些(6 月 21 日测试过的)有效的 javascript 代码(没有依赖项)。

function triggerMouseEvent(element, eventname){
var event = document.createEvent('MouseEvents');
event.initMouseEvent(eventname, true, true, document.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, element);
element.dispatchEvent(event);
}

function replicateClick(element){
triggerMouseEvent(element, 'mouseover');
triggerMouseEvent(element, 'mousedown');
triggerMouseEvent(element, 'mouseup');
}

function thumbsUp(){
replicateClick(document.getElementById('thumbsUpPlayer'));
}

function thumbsDown(){
replicateClick(document.getElementById('thumbsDownPlayer'));
}

它应该很容易使用,如果你想竖起大拇指,只需调用 thumbsUp() 或如果你想要竖起大拇指,则调用 thumbsDown()

关于javascript - 谷歌音乐测试版 : Thumbs Up and Down Now Playing using Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6259764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com