2012-06-15 61 views

回答

1

要触发点击对象,只是这样做:

$('#link').click(); 

只有当click()函数已经被jQuery绑定时,这才会起作用,但可能是您要查找的内容。

否则,如果你试图打开使用JavaScript一个新的窗口,使用window.open('url','_blank','width=100,height=100');

代替window.location像其他人已经公布,这将不会在新的目标窗口打开。

除上述示例中的widthheight之外,还可以为打开窗口设置更多属性。

1

有与jQuery或trigger没有问题。

jQuery的触发你的链接,jQuery的需要知道,首先要将一个单击处理程序到你的链接

$('#link').click(function(){ 
    window.location = this.href; 
}); 
​ 

Working Example

+0

这将重定向到另一个url,但不会在新窗口中打开,如op的示例所示。 –

+0

@ZeeTee:指出***主要问题。至于新窗口,可以使用'window.open'。 '的window.open(这一点。href)' – Sarfraz

1
// you have to assign a click event handler for anchor tag 

$('#link').on('click', function() { 
    window.location = this.href; 
}); 

$('#btn').click(function(){ 

    $('#link').trigger('click'); // or $('#link').click(); 
    alert("I am alerting but link is not triggered"); 

}); 

点击不是默认行为来锚定标签。所以如果你想要的话想要做什么,你必须分配点击事件处理程序以先前定位,然后触发该事件。还有一个重要的想法是,在通过jquery触发任何事件之前,jquery应该通知该事件。

DEMO

要在新窗口中打开不喜欢以下:

$('#link').on('click', function() { 
    window.open(this.herf,this.target); 
}); 

DEMO

+0

这将重定向到另一个url,但不会按照op的示例在新窗口中打开。 –

+0

@yogesh检查最后一个演示 – thecodeparadox

+0

@ZeeTee检查最后一个演示 – thecodeparadox

0

请务必记住,click()不会触发链接上的默认行为,即使没有其他任何东西阻止它。所以你不能单独使用click()来模拟用户点击一个链接并被带到另一个url。

这就是为什么你需要附加一个事件处理程序link处理click事件

$('#link').click(function(){ 
    // navigate to page 
}); 
相关问题