2009-10-05 7 views
4

Я пытаюсь установить trigger() ссылку, но она не работает.jQuery: trigger() не будет работать по ссылке

Элемент <img> имеет атрибут rel, который содержит идентификатор ссылки. Нажатие на элемент должно активировать соответствующую ссылку, если это возможно.

Я думаю, проблема в том, что я захватываю событие jQuery click, а не действие нативной ссылке.

Во всяком случае, вот код для вас, чтобы увидеть:

$("#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; 
}); 

EDIT

Я нашел ответ: Это не возможно, чтобы вызвать родное событие ссылки в этом пути так что я буду используйте вместо этого window.location.

+0

Попробуйте войти в систему target.id, что вы получаете? –

+0

работает отлично..просмотрите пример http://jsfiddle.net/sbJHR/ –

+0

@ Рихард это старый пост, но любопытные, чтобы узнать, что произошло? как это было решено? – Baljeetsingh

ответ

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

Я испытал на IE9, IE8 и Chrome. Это работает на IE, но не работает на Chrome!

Смежные вопросы