我试图为具有两行布局的表格实施Google的快捷按钮here。
快捷按钮绑定在表格行上:
var buttons = document.getElementsByClassName('evtFastbutton');
for (var i = 0; i < buttons.length; i++) {
var fastbutton = new FastButton(buttons[i], function () {
var urlstr = 'xyz';
window.location.href = (urlstr);
});
}
如果单击其中一行,则应更改上一行或下一行及其自身的背景颜色并打开新页面。
在Android或PC上使用Chrome或Firefox时效果很好。
在iPhone上的Safari中,它不会更改背景颜色,而是打开新页面。
我不确定什么不起作用,背景颜色或快按钮的改变。
是否有人遇到类似的问题或可能的解决方案?
你可以在这个小提琴中找到完整的代码: http://jsfiddle.net/tofeld/9Lu54yrr/1/
谢谢!
PS:我已经尝试过在这个问题上建议的解决方案:Google FastButton clicks twice on iOS
答案 0 :(得分:0)
我找到了解决问题的方法。 如上所述here,渲染未在javascript更改页面执行之前完成。
因此,如果有人遇到类似问题,请尝试:
window.setTimeout(function(){window.location.href=('new/location');},0);
而不是
window.location.href=('new/location');