5

当用户在手机上触摸/点击时,我正在尝试更改链接的背景颜色,尽管以下代码有效,但有时链接仍然是黑色并且在您释放时不会变回白色,有没有更好的方法编码呢?

$('#test').bind('touchstart', function() {
    $(this).css('background-color', 'black');
});

$('#test').bind('touchend', function() {
    $(this).css('background-color', 'white');
});​

谢谢!

4

1 回答 1

9

这可以在没有 jQuery 的 CSS 中完成:

a:active
{
    background-color: black;
}

注意与 Android 的股票浏览器的兼容性

出于某种原因,上面的代码在 Android 的普通浏览器(可能还有其他一些浏览器)中不起作用。但是,一旦您将ontouchstart=""参数添加到<body>标签中,它就会起作用,如下所示:

<body ontouchstart="">

此外,Android 股票浏览器默认突出显示链接(蓝色背景,在我的手机上)。要禁用此功能,请键入:

a
{
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0); 
}

有关更多详细信息,请参阅

Jsfiddle在这里

于 2013-06-01T09:17:51.490 回答