消除Windows Phone 7中的点按高亮显示?

时间:2012-09-30 22:01:46

标签: jquery css windows-phone-7 windows-mobile

我正在构建一个移动Web应用程序,我遇到了Windows Phone 7的问题,我在Android或iOS上没有这个问题。该应用程序在移动IE中运行得相当不错,但由于我使用的是JQuery(相对)新的.on()方法,我得到了奇怪的点击突出效果,使得使用该应用程序令人讨厌。

示例:我有一个消息列表,如Twitter或电子邮件客户端(Android / iOS风格),我的JS代码如下:

$('#conversation_list').on('click', '.conversation', function () {
    // show all the messages in a conversation
});

最终发生的事情是整个顶级选择器(在本例中为#conversation_list)被突出显示(并且通常会因为一两个不舒服而保持突出显示)。我认为这可能会让一些用户感到困惑,因为即使你有这种感觉,也没有感觉你正在点击你想要的元素。

有没有办法避免这种情况,或者只是关闭WinPhone IE中的点击突出显示?我在iOS和Android浏览器中成功使用了-webkit-tap-highlight-color,但它似乎没有在这里工作。

5 个答案:

答案 0 :(得分:16)

对于WP8,他们增加了支持:

<meta name="msapplication-tap-highlight" content="no"/> 

来源: http://sgrebnov.blogspot.de/2012/10/windows-phone-8-for-html5js-developers.html

答案 1 :(得分:1)

请参阅此相关问题:

Windows Phone 7 Browser - Turn off the gray shading when links are clicked

没有内置支持来删除此突出显示。但是,已经提出了一些解决方法。

答案 2 :(得分:0)

我觉得你在这里运气不好。 WP7不支持tap-highlight-color。您可以使用IE10压力支持,但不能使用WP7

答案 3 :(得分:0)

您可以使用CSS

在特定元素上禁用IE 10中的点击突出显示

-ms-touch-action:none;

答案 4 :(得分:0)

正如Lepi所说:

-ms-touch-action: none; 

在CSS文件的按钮部分 &安培;

$(".button").click( onTouchstart );
在你的JS文件中

来激活你的onTouchstart()函数