我偶然发现了iPad上的Safari中的错误。jQuery触发器点击移动Safari(iPad)
$('#next_proj a').trigger('click');
..似乎没有点击实际的链接。
任何线索?
我偶然发现了iPad上的Safari中的错误。jQuery触发器点击移动Safari(iPad)
$('#next_proj a').trigger('click');
..似乎没有点击实际的链接。
任何线索?
它可能不是一个错误。我的猜测是,他们不想让JavaScript模拟用户点击。
我这做这个工作......
var el = $('#next_proj a').get(0);
var evt = document.createEvent("MouseEvents");
evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
el.dispatchEvent(evt);
希望它可以帮助...
你试过触发触摸事件,而不是点击事件的?不知道你将如何在jQuery的实现 - 但它是不是太纯JS
function simulateEvent() {
var e = document.createEvent('HTMLEvents');
e.initEvent('touchstart',true, true);
document.dispatchEvent(e);
}
这实际上不触发点击复杂,但它不会在一个锚工作,打开一个新窗口..有趣。我认为苹果增加了一种方法来确定点击在safari的javascript引擎中是否合法。 – 2014-05-07 19:57:26