2013-06-01 99 views
4

虽然下面的代码有效,但有时链接仍然是黑色的,并且不会更改,但我试图在用户触摸/点按移动设备时更改链接的背景颜色当你发布时会变成白色,有没有更好的编码方式?更改触摸链接的背景颜色

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

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

谢谢!

+0

什么是您使用的jQuery文件的版本? –

回答

6

这可以用CSS来实现,而不jQuery的:

a:active 
{ 
    background-color: black; 
} 

注意有关使用Android的股票浏览器

出于某种原因的兼容性,上面的代码不会在Android的股票浏览器工作(和也许还有其他一些浏览器)

<body ontouchstart=""> 

另外,Android的浏览器的股票凸显默认链接(蓝色背景,我的手机上):但是,一旦你添加ontouchstart=""参数的<body>标签,像这样它会奏效。要禁用它,请键入:

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

详情参见thisthis

Jsfiddle here

+0

不起作用 – user1937021

+0

@ user1937021至少在谷歌浏览器for Android中起作用。我更新了关于其他浏览器的说明。希望这可以帮助。 –