2010-08-22 72 views

回答

2

它可能不是一个错误。我的猜测是,他们不想让JavaScript模拟用户点击。

4

我这做这个工作......

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); 

希望它可以帮助...

+0

这实际上不触发点击复杂,但它不会在一个锚工作,打开一个新窗口..有趣。我认为苹果增加了一种方法来确定点击在safari的javascript引擎中是否合法。 – 2014-05-07 19:57:26

0

你试过触发触摸事件,而不是点击事件的?不知道你将如何在jQuery的实现 - 但它是不是太纯JS

function simulateEvent() { 
    var e = document.createEvent('HTMLEvents'); 
    e.initEvent('touchstart',true, true); 
    document.dispatchEvent(e); 
}