2009-10-28 84 views
3

在jQuery觸發器('click')和click()似乎只觸發onclick事件。我想模擬一個沒有onclick事件的標籤點擊。如何使用jQuery或mootools觸發本機(href)點擊標籤?

我想要達到的是在着陸時顯示燈箱。燈箱附加到需要點擊的標籤上。

任何想法?

+0

亞歷克斯,我使用的插件有點太複雜,無法直接調用... 我發現了一個可以直接調用的框外,slimbox和問題解決的lightbox插件。 感謝您的輸入 – eakkas 2009-10-28 19:14:26

回答

0

試試這個:

window.location = $('a#go').attr('href')

1

onclick事件是所有有。如果它一直向上冒泡而沒有停止,它會將您帶到鏈接的位置。

你可能需要一些東西來阻止它冒泡。您可以使用return false;e.preventDefault()停止提交表單,並且您可以使用e.stopPropagation()e.stopImmediatePropagation()以阻止冒泡。

很可能,有一種方法可以激活燈箱插件,但不會「點擊」鏈接。

0

解決了它。 Slimbox for mootools支持直接調用Lightbox而不需要鏈接。

0

大多數燈箱確實支持通過JavaScript啓動它們以及單擊鏈接。 Slimbox絕對是一個不錯的燈箱,不錯的選擇!

2

的是,回答你原來的問題,至少就MooTools是擔心:你可以模擬點擊/火的功能設置通過這個來處理它(如果有的話):

$("someid").fireEvent("click"); 
1
//I use, when want show image in lightbox by original image or thumbnails list 

//simulate click on lightbox image by click another place with same image url (hack pro kliknuti na spravne url lightboxu) 
$('#simulate_click').click(function(event){ 

    //get url from simulate link (zjistime url odkazu) 
    var odkaz = $(this).attr("href"); 

    //look for real lightbox link with the same url (najdeme lightbox odkaz) 
    var lightOdkaz = $('#rc-carousel ul li a[href="'+odkaz+'"]'); 

    //simulate clik on that lightbox link (klikneme na nej) 
    lightOdkaz.trigger("click"); 

    //stop propagation of click on original link (zabranime propagaci) 
    return false; 
    //event.stopPropagation(); 
    }); 
+1

如果您在我們的評論中使用英語,對我們來說會容易得多。 – 2012-02-14 21:21:33