在 Greasemonkey 中使用 jQuery 插件(即醉酒)

发布于 2024-10-06 17:47:24 字数 372 浏览 0 评论 0原文

我正在尝试(并且大部分成功)在我的greasemonkey 脚本中使用Tisy jQuery 插件。我正在使用 @require 元标记来导入 jquery 和 Tipsy js,它可以工作,但有一些我正在努力克服的警告。

作为纯 jQuery 对象访问元素失败,因此我只能使用 DOM 函数来获取我的元素:

//this fails
$('#login').find('a:first').tipsy(); 

//while this succeeds
$(document.getElementById('login').getElementsByTagName('a')[0]).tipsy();

有人知道为什么吗?需要更多信息吗?蒂亚!

I'm trying (and for the most part succeeding) to use the tipsy jQuery plugin in my greasemonkey script. I am using the @require meta tag to import the jquery and tipsy js, and it works, but with a couple caveats which I'm trying to overcome.

Accessing elements as a pure jQuery object fails, so I'm relegated to using DOM functions to get my elements:

//this fails
$('#login').find('a:first').tipsy(); 

//while this succeeds
$(document.getElementById('login').getElementsByTagName('a')[0]).tipsy();

Anyone know why? Need more info? TIA!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

森林迷了鹿 2024-10-13 17:47:24

我认为这是因为在 Greasemonkey 内部,jQuery 具有与文档不同的默认上下文。试试这个:

$("#login", document).find('a:first').tipsy();

I think it's because inside Greasemonkey, jQuery has a different default context than the document. Try this:

$("#login", document).find('a:first').tipsy();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文