Jquery 扩展 BeautyTips 不适用于动态 ajaxPath 选项

发布于 2024-12-11 21:13:59 字数 793 浏览 0 评论 0原文

我正在使用 BeautyTips jQuery 扩展,但我没有运气将动态 URL 作为 ajaxPath 传递。在文档中,他们建议:

$('#example18').bt({
  ajaxPath: ["$(this).attr('href')", 'div#content']
});

我有

$( '.username' ).bt({ 
    ajaxPath: ["$(this).attr('title')"]
});

但是,当我将鼠标悬停在 username 元素上时,它不会调出存储在 Beautytip 的 title 属性中的 URL,而是尝试将整个浏览器发送到另一个页面(或刷新;这很难说,因为浏览器地址不变,但是页面变为空白,并且“查看源代码”显示完全不同的页面。)

我已验证相关元素中的标题是正确的并且正在正确处理。如果我静态传递路径,它可以工作,但我不想为页面上需要 Beautytip 的每个项目编写此函数的新版本。

这里有语法问题吗?任何帮助将不胜感激。

我的 HTML 是这样的:

<span class="username" title="http://degree3.com/popup/baloon/member-summary?id=53">Username</span>

I'm using the BeautyTips jQuery extension, but I'm not having any luck passing dynamic URLs as the ajaxPath. In the documentation, they suggest:

$('#example18').bt({
  ajaxPath: ["$(this).attr('href')", 'div#content']
});

I have

$( '.username' ).bt({ 
    ajaxPath: ["$(this).attr('title')"]
});

However, when I hover over the username element, instead of bringing up the URL stored in the title attribute within the Beautytip, it attempts to send the whole browser to another page (or refresh; it's hard to tell because the browser address doesn't change, but the page goes blank, and a View Source shows an entirely different page.)

I have verified that the title in the element in question is correct and is being addressed correctly. If I statically pass the path, it works, but I'd rather not write a new version of this function for every item on the page that needs a Beautytip.

Is there a syntax issue here? Any help would be much appreciated.

My HTML is like:

<span class="username" title="http://degree3.com/popup/baloon/member-summary?id=53">Username</span>

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

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

发布评论

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

评论(1

煮酒 2024-12-18 21:13:59

好吧,我必须仔细研究扩展,但我找到了这个。

插件作者(由于我没有花时间解读的原因)删除了 BeautyTips 操作的元素的“title”属性,并将其值移动到名为“bt-xtitle”的属性。我想这就是为什么他的样本使用“href”属性而不是标题属性,而我在错误的属性上尝试这种操作真是太运气了。

无论如何,这有效:

$( '.username' ).bt({ 
    ajaxPath: ["$(this).attr('bt-xtitle')"]
});

Okay, I had to dig through the extension, but I figured this one out.

The plugin author (for reasons I did not spend the time to decipher) kills the "title" attribute of the element that BeautyTips operates on and moves its value to an attribute called "bt-xtitle" instead. I guess this is why his sample used the "href" attribute instead of the title attribute, and it was my dumb luck to attempt this maneuver on the wrong attribute.

Anyway, this works:

$( '.username' ).bt({ 
    ajaxPath: ["$(this).attr('bt-xtitle')"]
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文