2009-10-05 81 views
4

我正在尝试trigger()链接,但它似乎不起作用。jQuery:trigger()将无法在链接上工作

<img>元素有一个rel属性,其中包含该链接的ID。 如果可能,单击元素应该触发相应的链接。

我认为问题在于我捕获了jQuery点击事件而不是本地链接操作。

总之,这里是代码给你看:我发现我的答案

$("#contentmenu li a").click(function(e){ 
    switch(e.target.id){ 
     case "opt1": 
      alert('do something'); 
     break; 
     case "opt2": 
      alert('do something'); 
     break; 
     case "opt3": 
      alert('do something'); 
     break; 
    } 
    //return false; 
}); 

$("#box_content img").click(function(e){ 
    menuItem=$(this).attr('rel'); 
    $('#'+menuItem).trigger('click'); 
    //return false; 
}); 

编辑

:这是不可能的触发链接的本地事件这样 所以我会请使用window.location代替。

+0

尝试记录target.id,你会得到什么? – 2012-01-24 09:47:18

+0

它工作正常..检查第五个例子http://jsfiddle.net/sbJHR/ – 2012-01-29 08:38:33

+0

@Richard这是旧的帖子,但古董知道发生了什么?它是如何解决的? – Baljeetsingh 2014-03-04 16:40:46

回答

1
$('#YourLinkId')[0].click(); 

我已经测试过IE9,IE8和Chrome。 这适用于IE,但不适用于Chrome!