2012-09-17 22 views
2

我這裏有這個代碼,應該送過警報...WordPress的jQuery的單擊事件

jQuery(".wpcart_gallery .thickbox").click(function($){ 
      alert('hi'); 
     }); 

但它不工作:(沒有任何錯誤和警告永遠不會出現。我有正確的JQuery。在我的頭js文件......是有什麼錯我的語法?

下面是HTML代碼

<div class="wpcart_gallery" style="text-align:center; padding-top:5px;"> 
<a class="thickbox cboxElement" href="DSC_0037.jpg" rev="DSC_0037.jpg"></a> 
<a class="thickbox cboxElement" href="DSC_0036.jpg" rev="DSC_0036.jpg"></a> 
<a class="thickbox cboxElement" href="DSC_0118.jpg" rev="DSC_0118.jpg"></a> 
</div> 

我想,當點擊裏面wpcart_gallery的鏈接之一,有一個點擊事件。

這裏是頁面,吹大圖像有三個圖像,我正在尋找單擊事件觸發,如果任何這些圖像被點擊... ... http://www.taranmarlowjewelry.com/?wpsc-product =產品-1-2

+2

固定的問題是,在JavaScript中一個'$(文件)。就緒(函數(){...} );'打電話?你可以提供這個網站或一個jsFiddle,這是可觀察的嗎? – Eric

+0

是的,它在'jQuery('document').ready(function($){....});' – user1269625

+0

''document''和'document'是不同的。刪除'''s並嘗試。 – Eric

回答

3

我通過

jQuery(".wpcart_gallery img").click(function($){ 
      alert('hi'); 
     }); 
0

有可能你需要使用委託綁定:

jQuery(window).on('click', ".wpcart_gallery .thickbox", function(ev){ 
    alert('hi'); 

    ev.preventDefault(); 
}); 

你可以,如果你可以用一些其他的父元素替換window。鑑於:

<div id="test"> 
    <a href="#">Link 1</a> 
    <a href="#">Link 2</a> 
    <a href="#">Link 3</a> 
    <a href="#">Link 4</a> 
</div> 

你可以這樣做:

jQuery("#test").on('click', 'a', function(ev) { 
    alert('hi'); 

    ev.preventDefault(); 
}); 
2

可能是因爲你有無效的HTML。以下都不是結束標籤:

<a class="thickbox cboxElement" href="DSC_0037.jpg" rev="DSC_0037.jpg"> 
<a class="thickbox cboxElement" href="DSC_0036.jpg" rev="DSC_0036.jpg"> 
<a class="thickbox cboxElement" href="DSC_0118.jpg" rev="DSC_0118.jpg"> 

如果我是jQuery,我會感到困惑。

如果我添加結束標籤,它工作正常:http://jsfiddle.net/GtgEy/

+0

+1:unclosed'a'標籤會導致各種破壞 – BLSully

+0

是的,他們有這些,只是忘了把它們放進去 – user1269625