1

我有一个网页,我在其中打开一个 jquery 计算器。此页面仅适用于桌面的 safari 和 android 设备的 chrome,因为我使用嵌入式数据库。

当有人使用桌面设备导航到该页面时,与计算器的交互非常慢,所以我使用了 fastclick库,问题就解决了。使用这个库,由于 stopPropagation() 和 preventDefault(),我不得不手动将一些 jquery 类添加到按钮元素,例如 ui-state-hover。

计算器速度很快,悬停颜色在 kindle fire 上效果很好。当我删除 jquery 类或尝试模糊按钮似乎不起作用。我还试图为这个按钮设置一个 CSS 规则,这样当我点击它们时它们就不会聚焦。似乎没有任何效果。我看到这个库不支持这个设备的 Silk 浏览器,但它修复了 300 毫秒的延迟。

有没有办法覆盖kindle fire jquery事件?问题出在丝绸浏览器上?

我的代码是:

document.getElementById("inv_calc_button_" + id).addEventListener('touchend', function(event) {
    event.stopPropagation();
    event.preventDefault();
    _function();
    $("#inv_calc .inv_calc_button").removeClass("ui-state-hover");
    $(this).addClass("ui-state-hover");
}, false);

if (!(/\bSilk\b/.test(navigator.userAgent))) {
    document.getElementById("inv_calc_button_" + id).addEventListener('click', function(event) { _function(); }, false);
}

这就是我如何覆盖按钮的css打开计算器并适用于除了kindle fire之外的所有内容:

.item_table button.ui-state-hover, .item_table button.ui-state-focus, .item_table button.ui-state-highlight {
border: 1px solid #cccccc !important;
background: #f6f6f6 url(/webfile?name=css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png) 50% 50% repeat-x !important;
font-weight: bold !important;
color: #1c94c4 !important;
}
4

0 回答 0