2

所以我有一个 jQuery UI 滑块,我在最新的 Chrome 浏览器上以 HTML5 全屏模式使用它。

当用户单击并拖动滑块句柄时,由于 jQuery UI 将滑块句柄绘制为带有 的<a>标签href="#",Chrome 会#在全屏底部的“状态栏”中显示链接(就像将鼠标悬停在链接上时一样,浏览器窗口底部会出现一个小状态栏)。

这破坏了我的全屏体验。

有没有办法阻止 Chrome 专门针对该滑块标签或任何带有 href 的链接执行此操作#?仍然为其他链接显示此信息会很有用。

如果做不到这一点,是否有让 jQuery 将滑块绘制为<div>标签而不是<a>标签的方法?

最后,(只是因为我很好奇)为什么 jQuery UI 团队的霸主会认为<a>在这种情况下使用标签比使用标签更明智<div>

4

2 回答 2

1

<a>在使用滑块后,标签似乎保持选中状态。用户完成滑块后,如何检测这取决于您,您可以使用jQuery.blur()取消选择元素,如下所示:

$('#element').blur()

这不是一个完美的解决方案,但我觉得这将是你现在能找到的最好的解决方案。

于 2013-04-08T14:37:38.787 回答
1

如果您要href在页面加载时从锚标记中删除 ,则 Chrome(或任何浏览器可能)中的状态栏将不会出现。

我同意这不是一个很好的解决方案。

为此,将以下行添加到您的末尾,$(document).ready()以便在整个页面加载后执行:

$(<* selctor for jQuery UI Slider *> ).removeAttr('href');

我通过这样做选择了元素:

$('.ui-slider-handle').removeAttr('href');
于 2013-04-08T14:48:07.553 回答