当用户将鼠标悬停在链接上时,在 Chrome 中更改光标样式失败
我在 Chrome 中遇到了一个奇怪的问题。
当单击侧边栏链接时,我使用 ajax 回调将光标的 css 样式设置为“等待”。这在 Firefox 中完美运行,但在 Chrome 上,只有当我将鼠标悬停在链接之外时,光标样式才会发生变化 - 即,当用户仍然将鼠标悬停在链接上时,样式不会改变
我做错了什么?这是相关的代码:
// beforeSend callback
$('.ajax-link').bind('ajax:beforeSend', function() {
$('body').css('cursor', 'wait');
$('a').css('cursor', 'wait');
$('article.post').addClass('loading');
});
// success callback
$('.ajax-link').bind('ajax:success', function() {
$('body').css('cursor', 'default');
$('a').css('cursor', 'pointer');
$("article.post").html("<%= escape_javascript(render @post) %>");
});
如您所见,我也使用 $('a').css('cursor', 'wait'); 显式设置所有锚点的 css,以便它可以在firefox 但 Chrome 似乎没有注意到这一点。
I have a strange problem that i'm seeing in Chrome.
I use an ajax callback to set the cursor's css style to "wait" when a sidebar link is clicked. This works perfectly in firefox, but on Chrome the cursor style only changes when I hover away from the link - i.e. the style doesn't change whilst the user is still hovered over the link
What am I doing wrong? Here's the relevant code:
// beforeSend callback
$('.ajax-link').bind('ajax:beforeSend', function() {
$('body').css('cursor', 'wait');
$('a').css('cursor', 'wait');
$('article.post').addClass('loading');
});
// success callback
$('.ajax-link').bind('ajax:success', function() {
$('body').css('cursor', 'default');
$('a').css('cursor', 'pointer');
$("article.post").html("<%= escape_javascript(render @post) %>");
});
As you can see I am explicitly setting the css for all anchors too with $('a').css('cursor', 'wait');
so that it works in firefox but Chrome doesn't seem to take notice of this.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
好的,这是 Chrome 和 Safari 的错误:http://code.google。 com/p/chromium/issues/detail?id=26723
我对此无能为力,我想我只能忍受它
ok, it's a Chrome and Safari bug: http://code.google.com/p/chromium/issues/detail?id=26723
not much I can do about it, I guess I can just live with it